过期提醒:本页面距今已有951天没有更新,年久失修,内容可能有所偏颇,还请仔细甄别! Loading... # 列表 list1=[1,2,3] lits1.inset[索引,数据]指定索引插入数据 list1.appedn('456')追加输入数据 打印效果 list1= [1,2,3,'456'] list1.extend([1,2])或者('1,2') 添加列表, 打印效果 list1= [1,2,3,1,2] 或者list1= [1,2,3,'1','2'] def list1[2] 内存删除索引指定的数据 list1.remove[数据] 删除第一个出现的数据 list1.pop(),删除指定索引数据,不指定删除最尾,可以 a = list1.pop(),用变量接收删除的数据 list1.clear() 清空列表 list1.index(数据) 返回索引的值 list1.count(数据) 查看数据出现的次数 list1.srot() 列表升序排序 list1.srot(reverse=True)列表降序排序 list1.reverse() 列表反转排序 涉及取值用中括号,涉及方法用小括号 enumerate()枚举地址跟数据 for i in enumerate(list1) print(i,end=',') 输出结果 (0,1),(1,2),(2,3) 列表单个索引取值如果超出会报错,利用切片[:100],超出也不会报错 例子:a[1,2,3,4,5] a[::2] 从头到尾,每隔2位取值,0开头不用写,取到最尾也可以不用写 结果 1,3,5 a[::-1]反方向取值 结果 5,4,3,2,1 a[5:1:-1] 结果 5,4,3,2 # 字典 adict1={'name':'lili','age':19} adict1.keys() 打印所有键的值 adict1.values() 打印所有键对应的数据 adict1.items() 打印(键,数据),,以元组形式输出 输出结果 dict.items([('name','lili'),('age',19)]) adict1['name'] 输出键的值,如果不存在会报错 adict1.get['name'] 输出键的值,不存在会返回None adict1.setdefault('height',1.75) 新增,没办法添加已有键 adict1.update({'height':1.75}) 更新字典,没有会增加,已有会覆盖 adict1['name'] ='lucy' 存在会覆盖,不存在会增加 del adict1 删除列表 adict1.pop(键值) 删除指定键及数据,不存在会报错 adict1.popitem() 删除最后一个,字典是无序的,在python2中,不知道每次最后的是 哪一组键值对 adict1.clear()清空列表 ```python adict1={'name':'lili','age':18} for k,v in adict1.items(): print(k,v) #输出结果,name lili age 18 ``` for的完整语法 for i in list: if print(找到) else: print(找不到) 把else放在for语句下,如果循环判断不符合,最后输出找不到, 把else放在if 下,会每次都输出 不加else,会在找到后,还打印找不到 # 字符串 字符串分几大类 判断类型 9个方法 查找替换 7个 大小写转换 5 文本对齐 3 去除空白 3 拆分与连接 5 ### 查看字符串长度 len(str) ### 查看子字符串在大字符串中出现的次数 str.count('小字符串'),查看在str中出现的次数 ### 统计子字符串在大字符串中第一个出现的位置 str.index('小字符串') 不存在会报错 字符串的切片操作,同列表 ### 字符串的判断 num_str = "1.1" ### 都不能判断小数 print(num_str.isdecimal()) # False print(num_str.isdigit()) # False print(num_str.isnumeric()) # False ### unicode 字符串 num_str = "\u00b2" print(num_str.isdecimal()) # False print(num_str.isdigit()) # True print(num_str.isnumeric()) # True ### 中文数字 num_str = "一千零一" print(num_str.isdecimal()) # False print(num_str.isdigit()) # False print(num_str.isnumeric()) # True # str.startswith('h')字符串以指定字符开始 str.endswith('h')字符串以指定字符结束 ### 查找指定字符串 index()如果不存在会报错 str.find('h') 不存在返回-1 ### 替换字符串 replace方法后,不会覆盖原来的内容,会返回一个新的字符串 str1 = str.replace('world','python') ### 转换字符串为小写 str.lower() ### 转换字符串为大写 str.upper() str.strip()去除首尾空白字符 str.strip.center(20,' ')去除首尾空白字符,居中对齐 ### 切割字符串 list=str.split() 默认空白字符,去除空白字符,并以空白位置组成列表 ### 字符串拼接 把列表中的字符串拼接成一个字符串 list1 = ['h','o','o'] ret = ','.join(list1) 输出ret,结果'h,o,o' + 支持列表,字符串,元组 [1,2]+[3,4] 打印 [1,2,3,4] * 重复 支持列表,元组,字符串 ['1']*3 打印 ['1','1','1'] in 判断元素是否存在,支持字符串,元组,列表,字典 (1,2)<(1,3). 返回True ### 去重 集合去重 list1= [1,4,1,2,3,1] new_list1=list(set(list1())) 打印 [1,2,3] 循环去重 for i in list1: if not i in new_list1: new_list1.append(i) print(new_list1) 打印 [1,4,2,3] new_list1.sort() print(new_list1) 打印[1,2,3,4] # 文件的读写 ```python #win是gbk格式,python是unicode格式,不同格式无法处理,要转码。'r'是默认值,读模式,只能读,不能写,写模式是'w',写模式是创建,会覆盖新文件。'a'是追加,可读可写 a+ 读写文件,可读可写,写在最后 w+ 写读文件,可写可读,创建一个新文件,文件名如果相同,等于覆盖了原文件。 f = open('文件名','r',encoding = 'utf-8')#文件句柄,把文件的大小,位置等赋给f data = f.read() data1 = f.read()#data1会读不到东西,因为data读完之后,光标停在了末尾 f.write()#写操作 f.clear()#关闭 f.readlines()#按行读文件,文件大时很少用,都是以下方式来处理文件的读 #f变成叠代器,读一行,处理一行。 count = 0 for line in f: if count ==9: print(line) count += 1 continue f.tell()#查看光标位置,按字符来数,一个字母,就算一位。 f.seek()#返回0位置,可以加数字,回到指定字符位置 f.encoding#打印文件格式 f.fileno()#返回编号 ,操作系统专门处理接口io的编号 f.name #文件名 f.readble()#判断文件是否可读 writeble 判断 是否可写 f.flush()#刷新的意思,强制写入硬盘,不等缓存满了再写 例子:打印进度条 import sys import time for i in range(100): sys.stdout.write("#") sys.stdout.flush()#flush强制输出到终端,会慢慢显示出来,不等缓存满了再打印,如果不加,会全部输出, time.sleep(0.1) f.truncate()#截断,不写就是清空文件,写入数字就是从0开始到数字位置,后面全清空。 文件的修改 #a文件中有aaa,bbb,ccc三行, f = open("a","r",encoding = 'utf-8') f_new = open('b.txt','w',encoding = 'utf-8') for line in f: if "aaa" in line: line = line.replace("aaa","kkk") f_new.write(line) f.close() f_new.close() with open('aa','a',encoding='utf-8') as f ,/ open('bb','a',encoding='utf-8') as f_new pass 这样可以比较清晰看清打开了几个文件。 ``` # 字符编码与转码 ascii码,只能存字母跟特殊字符,每个占一个字节,8位。不能存中文。 unicode 万国码,每个码占两个字节,16位 如果全用unicode,本来2m的文件,变成了4m 出现了‘utf-8',可变长的字符码,默认英文按ascii码存储,中文按3个字节。 # 特殊用法: ## input输出框显示默认值 ```python #利用input无输入时返回None,加if语句判断,无输入把显示的默认值赋给name,达到默认输入的结果 dict1 = { "name":"小李", "age":18 } name = input('请输入姓名:dict1["name"]') if len(name) == 0: name = dict1["name"] ``` ## 打印动态进度条 ```python import sys import time for i in range(30) sys.stdout.write("#") sys.stdout.flush() time.sleep(0.05) ``` 最后修改:2020 年 10 月 18 日 05 : 22 PM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏 ×Close 赞赏作者 扫一扫支付 支付宝支付 微信支付
2 条评论