文件编辑
内容目录
open('路径','打开方式','指定编码方式')
#绝对路径打开 #例如打开存在F盘里面的一个文件——‘file.txt’ --> 123 f = open('f:\\file.txt',mode='r',encoding='utf-8') content = f.read() print(content) #123 f.close() #打开存在F盘里面的一个文件——'你大爷.txt' --> 123 f = open('f:\你大爷.txt',encoding='utf-8') content = f.read() print(content) #123 f.close() #相对路径打开 ---> 在同一级目录里 #例如打开同一级目录里的 ---> ‘file.py’文档 --> #123 f = open('file.py',mode='r',encoding='utf-8') content = f.read() print(content) #123 f.close()
#只读 r --> rb(对非文字类型文件打印,文字类的传输和下载) #读写r+ --> r+b(对非文字类型文件打印,文字类的传输和下载) #先读再写与先写再读实现的效果不一样 #log = 123 --> 123 f = open('log',mode='r',encoding='utf-8') content = f.read() print(content) f.close() #log = 123 --> b'123'(byte) f = open('log',mode='rb') #对非文字类型文件的传输和下载 content = f.read() print(content) f.close() #log = 123 --> 123 #读写:先读再写,先打印出文本原来的字符串 #再把写的字符串添加到文本里去,后面写的文档不显示 f = open('log',mode='r+',encoding='utf-8') print(f.read()) f.write('aaa') f.close() #写读:先写再读,先将字符串打印再文本起始(只写,直接删除文本),从其实位置覆盖文本,足够长,可完全覆盖 #再把剩余文本打印出来(若被完全覆盖,则打印零) # log = 123 --> aaa(完全覆盖) f = open('log',mode='r+',encoding='utf-8') f.write('aaa') print(f.read()) f.close()
#只写w --> wb(对非文字类型文件打印,文字类的传输和下载) #w+(写读) f = open('log',mode='w',encoding='utf-8') f.write('骑兵') #先将原文件的内容全部删除,再将内容写进去 f.close() #wb(对非文字类型文件打印,文字类的传输和下载) f = open('log',mode='wb') f.write('骑车'.encode('utf-8')) f.close() f = open('log',mode='w+',encoding='utf-8') f.write('555') f.seek(0) #移动光标 print(f.read()) f.close()
#追加 ab(对非文字类型文件打印,文字类的传输和下载) #a+(追加其他功能) #log = 骑车 --> 骑车中国 f = open('log',mode='a',encoding='utf-8') #光标默认移动到文字最右边 f.write('中国') f.close() #file = 骑车中国 --> 骑车中国大地 f = open('log',mode='ab') #光标默认移动到文字最右边 f.write('大地'.encode('utf-8')) f.close() #file = 骑车中国大地 --> 骑车中国大地大地 f = open('log',mode='a+',encoding='utf-8') f.write('大地') f.seek(0) print(f.read()) f.close()
import hashlib with open(r'C:\Users\HP\Desktop\面朝大海,春暖花开.txt','r',encoding='utf-8') as f,\ open('file','r+',encoding='utf-8') as f1: for line in f: lines = hashlib.md5(bytes('加盐',encoding='utf-8')) lines.update(bytes(line,'utf-8')) lined = lines.hexdigest() f1.write(lined+'\n')
read 一次性读
readlines 一次性读
readline 一行一行读
不知道在哪儿结束
视频 图片 rb bytes 按照字节读
for循环
#seek()、tell()、read() f= open('log',mode= 'r+',encoding='utf-8') print(f.read(3)) #读取前三个字符 f.seek(0) #移动光标 print(f.tell()) #告诉系统光标在哪 f.close()
f = open('log') f.close() #需要关闭来节省内存 with open('log',mode='r',encoding='utf-8') as fno: #不需要关闭 print(fno.read())

浙公网安备 33010602011771号