Python语言程序设计(工作手册式)【实训题目-含答案】5 字符串与文件答案版_第1页
Python语言程序设计(工作手册式)【实训题目-含答案】5 字符串与文件答案版_第2页
Python语言程序设计(工作手册式)【实训题目-含答案】5 字符串与文件答案版_第3页
Python语言程序设计(工作手册式)【实训题目-含答案】5 字符串与文件答案版_第4页
Python语言程序设计(工作手册式)【实训题目-含答案】5 字符串与文件答案版_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

«Python基础》

实脍报告

实验项目实验5:字符串与文件

学员姓名______________________________

实验日期

实验5:字符串与文件

一、实验目的

1.学会字符串的连接、格式化、转换、分割

2.掌握子集的选择:切片运算

3.掌握字符串与列表转换

4.了解字符与ASCII码的转换

5.能够利用文件存储字符串

6.掌握文本文件的读写

二、单元练习

1.定义:str="www.P",写出执行下面语句后的结果。

转义字符执行结果描述语句的作用

print(str.upperf))WWW.PYTHON.COM字符串大写

print(str.lowerO)字符串小写

print(str.titleO)Www.Python.Com字符串标题化,所有单词

以大写开始

print(str.capitalize())W第一个字母大写

print(str.isalnum())False是否含有一个数字

print(str.isalpha())False如果字符串至少有一个字

符并且所有字母都是字母

则返回true,否则返回

lasc

print(str.isdigit())False字符串是否只包含数字

print(str.islower())False如果字符串中包含至少一

个区分大小写的字符,并

且所有这些(区分大小写

的)字符都是小写,则返回

true,否则返回false

print(slr.isuppcr())False如果字符串中包含至少一

个区分大小写的字符,并

且所有这些(区分大小写

的)字符都是大写,则返回

true,否则返回false

print(slr.istitle())False如果字符串是标题化则返

回true.否则返回false

print(str.isspace())False如果字符串只包含空白,

则返回firue,否则返回

false

三、课堂练习

任务1:【字符串基础训练】

1.字符串a="theDerisChristoPheriskind"编写代码去捏字符串的空格。

程序编写于下方

a=MtheDerisChristoPheriskind"

print(a.replace('

2.字符串a="hello”,b="a即end”编写代码将两个字符串连接起来。

程序编写于下方

a="hello'

h='append'

print(a+b)

3.字符串a="goodstudent”编写代码查找“s”在字符串的位置。

程序编写于下方

a='goodstudent'

c=0

foriina:

ifi=='s':

prinl(u)

C+=1

4.字符串a="goodstuden『编写代码计算他的长度。

程序编写于下方

a='goodstudent'

print(len(a))

5.字符串a="goodStudent”编写代码使该字符串大写输出。

程序编写于下方

a='goodStudent'

prinl(a.upper。)

6.字符串a="goodStudent”编写代码使字符串逆序输出。

程序编写于下方

a='goodStudent'

print(a[::-l])

7.字符串a="goodStudent",b=“o”,编写代码查找字符串b在a中的位置。

程序编写于下方

a='goodStudent'

b='o'

c=0

foriina:

ifi==b:

print(c)

c+=I

8.字符串a="goodStudent”编写代码使字符串大小写互换。

程序编写于下方

a='goodStudent'

print(a.swapcase())

9.字符串a="goodSludenl”编写代码将字符串中的o替换为C。

程序编写于下方

a='goodStudent'

printCa.replaceCo'7C'))

10.字符串2=经00(1”,为该字符串添加元素“Siudem”。

程序编写于下方

a='good'

print(a+'Student')

11.在屏幕上打印出\n。

程序编写于下方

print(\\nr)

12.在python中输出保留两位小数输出八。

程序编写于下方

pi=3.1415926

print。%.2f%(pi))

13.现有字符串“5”,格式化字符串使其输出“05”,“5aa”。

程序编写于下方

print('(:0>2s}'.format('5'))

print('{:a<3s}'.format('5'))

任务2:【字符串中子串出现的次数】

计算字符串中子串出现的次数。要求:用户输入一个字符串,然后再输入一个子串,程序判

断该子串在字符串中出现的次数,最后打印出来。

程序编写于下方

a='111110111011I01I101ir

word=input。请输入字符串:’)

wod=inputC请输入子串:')

prim('该字符串中字串共出现{}次,.fbrmat(出(nword.split(wod))-1))

任务3:【字符串排序】

对字符串进行排序。要求:用户输入多个字符串,字符串直接用特殊符号-逗号(,)隔开,

程序对输入的多个字符进行排序,最后根据排序结果打印出来。

程序编写于下方

num="

word=input('请输入字符串:)

word=word.split。,')

word.sort()

print(word)

任务4:【敏感词替换】

对字符串中敏感词进行替换。要求:根据需要定义一个敏感词库,例如:words=C暴力,,'非

法‘攻击'),然后用户输入一个字符串,如果该字符串中有words中的敏感词汇,将对

该字符串进行敏感词汇的替换(月***代替敏感词汇),最后把替换后的字符串打印出来。

程序编写于下方

defdesensity(sentences):

words=C暴力」非法」攻击)

foriinwords:

sentences=sentences.replace(i,'****)

returnsentences

s='暴力@@@32323232323232丰法非法232sdsd攻击sd非法45,

print(desensity(s))

任务5:1文件基础练习】

1.在当前目录下创建一个“【est.log”文件。

程序编写于下方

file=open('test.txt','w')

2在test文件中写入aHelloWord\

程序编写于下方

file=open('test.txt','w')

file.writeCHelloWord')

file.closeO

3.在test文件“HelloWord“后面输入"Python”。

程序编写于下方

file=open('lest.txt','a')

file.write('Python')

file.closeO

4.查找当前文件操作标记的位置(提示:seek。)。

程序编写于下方

f=openCtest.txt','r')

x=f.tell()

print,当前文件操作标记位置是:{},.format(x))

f.close()

5.把文件操作符的位置移动最前面。

程序编写于下方

f=openCtest.txt',Y')

f.seek(O)

x=f.tell()

prim。当前文件操作标记位置是:{}'.format(x))

f.close()

6.以二进制方式输出test文件。

程序编写于下方

defget_bin(str):

bindata="

fbriinstr:

ifi.isalpha():

d=bin(ord(i))

elifi.isdigit():

d=bin(eval(i))

bindata+=d

returnbindata

f=open('test.txt','r')

f.seek(O)

data=f.rcad()

prini(gel_bin(dala).splil('Ob'))

f.close()

7.关闭test文件。

程序编写于下方

f.close()

8.删除test文件。

程序编写于下方

importos

printCos.removeC'test.txt'))

9.编写代码输出当前Python脚本工作的目录路径。

程序编写于下方

importos

print(os.gctcwd())

任务6:【文件内容合并】

有两个磁盘文件A和B,各存放一行字母,要求编写代码实现将这两人文件中的信息合并,

并按字母先后顺序排列,最后输出到一个新文件C中。

程序编写于下方

fl=open('testl.txt',Y)

f2=openCtest2.txt'.'r')

f3=openCtest3.txt','w')

alist=[J

fl.seek(O)

f2.seek(O)

datal=fl.read()

data2=f2.read()

data3=data1+data2

foriindata3:

alist.append(i)

alist.sort()

data3=".join(alisi)

f3.write(data3)

print(data3)

fl.close()

f2.close()

f3.close()

四、拓展任务

任务1:【字符串加密】

要求:编写一个函数实现字符串加密,先将字符串中每个字符的ASCII码都加10,转换成

另外一个字符,然后再转出回字符形式,获得加密后的字符串。

提示:ord()函数主要用来返回对应字符的ASCII码,chr()主要用来表示ASCH码对应的字

符。

程序编写于下方

defTo_password(pas):

password="

fbriinpas:

password+=chr(ord(i)+10)

returnpassword

words=input('请输入要加密的字符串:')

print(To_password(words))

任务2:【字符串解密】

要求:编写一个函数实现字符串解密。实现对任务1中的加密过的字符串的解密功能。

程序编写于下方

defGet_password(pas):

password="

foriinpas:

password+=chr(ord①-10)

returnpassword

words=input,请输入要解密的字符串:,)

print(Get_password(words))

任务3:【字符串日期转换为易读的日期格式】

要求:编写程序实现将字符串日期转换为易读的日期格式。例如:将”Aug28201812:00AM”

转换为:“2018-08-2800:00:00”。

提示:可以用dateutil库中的parser函数。

程序编写于下方

fromdaleutil.parserimportparse

s=parse('Aug28201812:00AM')

print(s)

任务4:【文件存储】

从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件“test"

中保存,并实现循环输入,直到输入

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论