当前位置:职场发展 > python学习路径(day3note)(元组、字典、集合、字符编码、文件操作)

python学习路径(day3note)(元组、字典、集合、字符编码、文件操作)

  • 发布:2023-09-30 15:10

--> 1、元组()
元组和列表一样,但是不能增删改查,但可以查看。元组也称为只读列表
2 方法,一种计数和一种索引

2。 Dictionary {}
字典通过key来查找value
因为这里的功能比较多,所以写了一段Code在里面,在最后添加了注释。
#!/usr/bin/env python #_*_编码:utf-8_*_ 信息={ 'stu1101':"吴腾兰", 'stu1102':"龙泽罗拉", 'stu1103':"小泽马利亚", } #打印(信息) #print(info["stu1101"]) #Search #print(info.get('stu1104')) #查找常用的 #info['stu1101'] = "Mutolan" #修改 #info['stu1104'] = "cangjingkong" #添加 #del #del 信息["stu1101"] #删除 #info.pop("stu1101") #删除 #print("stu1103" in info) #判断是否有这个key,返回true false # #打印(信息) b = { 'stu1101':"亚历克斯", 1:3, 2:5, } #info.update(b) #合并两个字典,覆盖相交的键,并添加不相交的旧字典。 #打印(信息) #c = dict.fromkeys([6,7,8],[1,{"name":"alex"},444]) 无用 #打印(c) #print(info.items()) #将字典转为列表 对于我的信息:print(i,info[i]) #这样效率更高 for k,v in info.items(): #items是将字典转换为列表的过程,会花很长时间 打印(k,v)

3。聚集

和数学里的定义几乎一样

因为这里的功能比较多,所以我把它们写成了一个Code,并在最后添加了注释。

#!/usr/bin/env python #_*_编码:utf-8_*_ #收集 #list_1 = [1,4,5,7,3,6,7,9] #集合也是无序的 #list_1 = set(list_1) #list_1成为一个集合 #print(列表_1,类型(列表_1)) #list_2 = 设置([2,6,0,66,22,8,4]) #打印(列表_1,列表_2) #交叉点& #print(list_1.intersection(list_2)) #联盟| #print(list_1.union(list_2))#union的意思 #badlevel 我有你没有的,你有我没有的 - #print(list_1.difference(list_2)) #保留1中的内容和2中没有的内容 #subsetiincludeyou #print(list_1.issubset(list_2)) #返回 true false #print(list_1.issuperset(list_2)) #对称差分集^上面 #print(list_1.symmetry_difference(list_2))#取出不互斥的,放在一起。 #print(list_1.isdisjoint(list_2)) #判断是否存在交集,返回true false #添加一个项目 #list_1.add(999) #打印(列表_1) #添加多个 #list_1.update([888,777,555]) #打印(列表_1) #删除 #list_1.remove(888) #删除不打印,删除即可 #list_1.pop()#list_1.discard(777) #删除不会报错 #长度 #print(len(list_1)) #会员使用 #在不在

4.字符编码

记住一句话,程序写什么编码就用什么编码打开 

#!/usr/bin/env python #_*_编码:utf-8_*_ #默认编码 #导入系统 #print(sys.getfilesystemencoding()) #s =“你好” #s_to_unicode = s.decode("utf-8") #print(s_to_unicode) #s_to_gbk = s.decode("utf-8").encode("gbk") #(如果没有给出值,则为默认值) #print(s_to_gbk)

5。文件操作

一般关闭和打开r+w都有清除文件的效果

因为这里的功能比较多,所以我把它们写成了一个Code,并在最后添加了注释。

#!/usr/bin/env python #_*_编码:utf-8_*_ #文件操作 #readlines是将文件读入列表中。每一行都是一个元素,并被预先读入内存中的列表中。 #date = open("昨天.txt",encoding="utf-8").read() #f = open("yesterday.txt",'w',encoding="utf-8")#f 文件句柄是这个文件的内存文件对象 w这种写方式是创建一个文件,会覆盖它 #日期= www.sychzs.cn() #f = open("yesterday.txt",'a',encoding="utf-8") #a是追加而不覆盖文件 #ate2 =www.sychzs.cn()#这是一个文件指针,date2没有内容,文件只读取一次 #打印(日期) #f.write("我爱北京天安门...,\n") #斜线为转义符,\n为回车符 #f.write("太阳从天安门升起......") #读取前五行#f = open("昨天.txt",'r',encoding="utf-8") #print(f.readline()) #print(f.readline()) #print(f.readline()) #对于范围内的我(5): # 打印(f.readline()) #for line in f.readlines(): #循环列表,相当于每一行,每一行元素 # 打印(line.strip()) #print(f.readlines()) #每行一个元素 #for index,line in enumerate(f.readlines()): #打印9行之前的内容但提前阅读全文 f.readline适合小文件 # 如果索引 == 9: # print("___风先____") # 继续 # 打印(line.strip()) #计数 = 0 #for line in f: #逐行读取,内存只能读取一行信息。 #打印9行之前的内容。 # 如果计数 == 9: # print("fdsfsdfsdfsdf___fengexian____dsfdfdsfdsfs") # 计数 += 1 # 继续 # 打印(行) # 计数 += 1 #print(www.sychzs.cn(5))#读取五个字符 #print(f.tell())# 告诉你打印出文件句柄的指针并按字符数进行计数。 #www.sychzs.cn(0)# 返回光标起始位置。 0 可以是其他先前的将被删除并显示的。 #print(f.readline()) #print(f.encoding)#打印文件编码 #print(f.fileno()) #返回一个数字,一个接口,调用操作系统文件的IO #print(www.sychzs.cn)#打印文件名 #print(f.isatty())#终端tty #print(www.sychzs.cn())#判断文件是否可读#print(f.writable())#判断文件是否可写 #print(f.flush())#为了解决文件存在于内存中然后被恶意关闭的问题,它其实是有一个内存值的。当达到这个值时,就会直接写入硬盘。 #f = open("昨天.txt",'a',encoding="utf-8") #print(f.close) #判断文件是否关闭 #f.truncate(10)#截断的本意是不写则清除。从10开始会被截断,需要与a协调。 #f.close() #文件读写 #f = open("yesterday.txt",'r+',encoding="utf-8") #以读取方式打开并追加a+append读取 ##print(f.readline()) #print(f.tell()) #f.write("12456----对爱-----") #写读 #f = open("yesterday.txt",'w+',encoding="utf-8") #先创建一个文件,然后追加到rb中以读取二进制文件。显示b'是字节文件。 #多用于网络传输,二进制文件 #f.write("12456----对爱-----") #print(f.tell()) #www.sychzs.cn(10) #print(f.tell()) #print(f.readline()) #f.write("我的天一个神我iqnkguang ") #对原文件的修改必须具有相同的字符,否则无法修改内容将被覆盖。 #ru r+u Windows\r回车,Linux\n回车统一 #如何修改硬盘上的文件 #f = open("昨天.txt",'r',encoding="utf-8") #f_new = open("yesterday.bak.txt",'w',encoding="utf-8") #for 中的行: # 如果《年少轻狂》符合: # line = line.replace("年少轻狂","哈哈哈") # f_new.write(行) #f.close()#f_new.close() #with语法可以关闭,无需手动编写 #with open("yesterday.txt",'r',encoding="utf-8") as f: # 对于 f 中的行: # 打印(line.strip()) #同时打开2个文件 #with open("yesterday.txt",'r',encoding="utf-8") as f,\ # open("yesterday.bak.txt",'w',encoding="utf-8") as f_new: -->

相关文章

热门推荐