写函数,,用户传入修改的文件名,与要修改的内容,执行函数,完成批了修改操作
def file_renewal(name,old_msg,new_msg): import os with open(f"{name}","r",encoding="utf-8") as f , open(f".{name}.swap","w",encoding="utf-8") as f1: for line in f : f1.write(line.replace(old_msg,new_msg)) os.remove(name) os.rename(f".{name}.swap",name) file_renewal("aaa.txt","a","b")
写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数
def count(*args): dic = {'num': 0,'letter': 0,'space': 0,'others': 0} for i in args: if i.isdigit(): dic['num'] += 1 elif i.isalpha(): dic['letter'] += 1 elif i.isspace(): dic['space'] += 1 else: dic['others'] += 1 return dic imp = input('input something:') res = count(*imp) print(res)
写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5
def len1(x): print(len(x)>5) len1([3333,11])
写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
def list_len(a): if len(a)>2: return a[0:2] res = list_len([5,5,4,4,4,1,1,]) print(res)
写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
def odd_number(indexes): if not (type(indexes) == type([1,2]) or type(indexes) == type((1,))): print('input must be list or tuple') else: new_indexes = indexes[0::2] return new_indexes indexes = (2,3,66,1,2,55,2,'aaa') res = odd_number(indexes) print(res)
写函数,检查字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
dic = {"k1": "v1v1", "k2": [11,22,33,44]} def dic_value(a): if not type(dic) == type({}): print('重新输入') for i in a: if len(a[i]) > 2: a[i] = a[i][0:2] return a res = dic_value(dic) print(res)