一、函数练习题:
1、写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成批了修改操作
2、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数
3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
4、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
5、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
6、写函数,检查字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
dic = {"k1": "v1v1", "k2": [11,22,33,44]}
PS:字典中的value只能是字符串或列表
1、
def change(filename,oldsb,newsb):
		import os
		with open(filename,'r',encoding='utf-8') as read_f,\
						open('.filename.swap','w',encoding='utf-8') as write_f:
						for line in  read_f:
								if oldsb in line:
										line=line.replace(oldsb,newsb)
								write_f.write(line)
		os.remove(filename)
		os.rename('.filename.swap','filename')
change('filename','somebady','sb')
2、
def count(str):
		res={
				'string':0,
				'num':0,
				'space':0,
				'qita':0
		}
		for s in str:
				if s.isdigit():
						res['num']+=1
				elif s.isalpha():
						res['string']+=1
				elif s.isspace():
						res['space']+=1
				else:
						res['qita']+=1
		return  res
res=count('hello world 123 : nihao ? ma ')
print(res)
3、
def long(str):
		if len(str)>5:
				print('长度大于5')
		else:
				print('长度小于5')
res=long('hello')
4、
def func1(list1):
		if len(list1)>2:
				list1=list1[0:2]
		return  list1
res=func1((1,2,3,4,5))
print(res)
5、
def func2(list2):
		list2=list2[::2]
		return  list2
res=func2((1,2,3,4,5))
print(res)
6、
def func3(dic1):
		for k,v in dic1.items():
				if len(v) >2:
						dic1[k] = v[0:2]
				return  dic1
print(func3({'k1':'abcdef','k2':[1,2,3,4],'k3':('a','b','c')}))