Day 17 字符编码and文件处理
来源:互联网 发布:faker知乎 编辑:程序博客网 时间:2024/06/05 15:58
1、写函数,,用户传入修改的文件名,与要修改的内容,执行函数,完成批了修改操作
def change(file_name,f_old,f_new): import os with open(file_name,'r',encoding='utf-8') as read_f, \ open('file_name.swp', 'w', encoding='utf-8') as write_f: for line in read_f: if f_old in line: line = line.replace(f_old, f_new) write_f.write(line) os.remove(file_name) os.rename('file_name.swp',file_name)change('b.txt','alex','egon')with open('b.txt',encoding='utf-8') as f: print(f.read())
2、写函数,计算传入字符串中【数字】、【字母】、【空格】 以及 【其他】的个数
def ro1(str): numbers, letters, spaces, etc = 0,0,0,0 for i in str: if i.isdigit(): numbers +=1 elif i.isalnum(): letters +=1 elif i.isspace(): spaces +=1 else: etc +=1 return(numbers, letters, spaces, etc)print(ro1('hello world 233 53 26'))
3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
def ro2(object): if isinstance(object,str) or isinstance(object,list)\ or isinstance(object,tuple): if len(object)>5: return True else: return False return Noneprint(ro2('hello world 233 53 26'))print(ro2('hell'))print(ro2(212))
4、写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容。
def ro3(obj): ret = False for i in obj: if i =='': ret =True return retprint(ro3('hello world'))print(ro3(['1','2 ','','k','4 ','3']))print(ro3((('x','1'),(''),(' z ',''))))
5、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,
并将新内容返回给调用者。
def ro4(obj1): if len(obj1) > 2: del obj1[2:] return obj1print(ro4([1,2,'h','k','g',3]))
6、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,
并将其作为新列表返回给调用者。
def ro5(obj2): list = [] for i in range(1,len(obj2),2): list.append(obj2[i]) return listprint(ro5([1,2,3,4,5,6,7,8,9,10]))
7、写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,
并将新内容返回给调用者。
dic = {"k1": "v1v1", "k2": [11,22,33,44]}
PS:字典中的value只能是字符串或列表
方法一:
def ro6(obj3): for i in obj3: if len(obj3[i]) > 2: obj3[i] = obj3[i][0:2] return obj3dic = {"k1": "v1v1", "k2": [11,22,33,44],"k3":"46846"}print(ro6(dic))方法二:
def ro7(obj4): ret = {} for k,v in obj4.items() if len(v) > 2: ret[k] = v[0:2] else: ret[k] = v
阅读全文
0 0
- Day 17 字符编码and文件处理
- DAY 17 字符编码、文件操作、函数定义
- python字符编码、文件处理
- 拨开字符编码的迷雾--编译器如何处理文件编码
- 拨开字符编码的迷雾--编译器如何处理文件编码
- 拨开字符编码的迷雾--编译器如何处理文件编码
- 拨开字符编码的迷雾--编译器如何处理文件编码
- vim 处理字符编码
- shell处理字符编码
- java 字符编码处理
- python3 字符编码处理
- java字符编码处理
- python 字符编码处理
- Python27 和 IronPython 处理文件读写的字符编码问题
- 深入理解Python中的字符编码、文件处理和函数
- 文件编码与字符编码
- Base64 文件字符编码
- 字符编码 ASCLL and UNICODE
- SpringMVC单元测试之MockMVC,模拟登入用户
- Ajax中解析Json的两种方法详解
- Spring 03 整合Junit+Web+SSH
- 沉浸式状态栏适配不同的版本
- 素人群友QQ:1255676779 接口测试框架生成的
- Day 17 字符编码and文件处理
- 欢迎使用CSDN-markdown编辑器
- $digest、$apply以及$$Phase,简单的运行原理
- PHP分离字符串--分离n个空格成数组
- 互联网广告行业术语及缩写
- android源码、博文精选1
- 基于FFmpeg的视音频分离器
- Opencv学习之漫水填充算法
- xml无法解析<和>导致无法导出excel问题