作业六。

1、写函数,,用户传入修改的文件名,与要修改的内容,执行函数,完成批了修改操作:

import  os
def modify(filename,old,nwe):
with open(filename,mode='r',encoding='utf-8')as read_f,
open('balck.txt',mode='w',encoding='utf-8') as write_f:
for line in read_f:
if old in line:
line = line.replace(old,nwe)
write_f.write(line)
os.remove(filename)
os.rename('balck.txt',filename)
modify('ab.txt','lyp','yipin')

2、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数
def check(msg):
res = {'num':0,'string':0,'space':0,'other':0}
for s in msg:
if s.isdigit():
res['num']+=1
elif s.isalpha():
res['string']+=1
elif s.isspace():
res['space']+=1
else:
res['other']+=1
return res
res = check('asdmvvab asfsdbas:vavsafb 2we4vv sd:dfb egx:vd e3rrfvv ')
print(res)

3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
def len1(xdd):
if len(xdd)>5:
res = True
else:
res = False
return res
res = len1('yuanchonghengaoxingchidianshi')
print(res)


4、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。

def len2(lxx):
if len(lxx)>2:
lxx = lxx[0:2]
return lxx
print(len2(['asd','fda','234','dsf','jkl']))

5、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。

def len3(oaa):
oaa = oaa[::2]
return oaa
print(len3([5,3,2,4,0,6,1,4,3,6,1,7,4]))

6、写函数,检查字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
def len4(cnm):
d={}
for key,item in cnm.items():
if len(item)>2:
d[key] = item[0:2]
return d
print(len4({'k1':[1,2,3,4,],'k2':'asdfg','k3':['o','a','a']}))















原文地址:https://www.cnblogs.com/lvyipin1/p/9703524.html