No.8进制&文件操作
时间:2020-03-19 09:55:42
收藏:0
阅读:42
No.8
今日概要
- 进制
- 文件操作
- 知识点梳理
内容详细
进制
- 二进制
- 八进制
- 十进制
- 十六进制:\x 开头
文件操作
#打开文件 f = open('文件路径', mode=;'r/w/a', encoding='原文件写入时定义的编码') #操作 data = f.read() #读取文件的内容到内存(全部) f.write('要写入的内容') #关闭 f.close()
字节流写入
示例一:一般用于文字写入 f = open('a.txt', mode='w', encoding='utf-8') f.write('你好') # 将'你好'根据encoding指定的编码转换成二进制(字节流) # 将二进制(字节流)写入到文件中 f.close() 示例二:一般用于图片/音频/视频/未知编码 # 不写encoding是以二进制(字节流)的方式打开。 f = open('a.txt', mode='wb') # 以字节流的方式打开必须以字节流的方式写入,否则会报错。 f.white('你好') # 正确步骤是先将写入内容先转化成二进制再进行写入。 f = open('a.txt', mode='wb') data = '你好' data.encode('utf-8') f.white(data) #如果拿到未知编码字节流,这里就直接写入字节流。 f.close()
字节流读取
示例一 f = open('a.txt', mode='r', encoding='utf-8') data = f.read() # 读取硬盘上的字节流(010101) # 将字节流按照encoding指定的编码转换成字符串 f.close() print(data) 示例二 f = open('a.txt', mode='rb') # 直接读取的是二进制(字节流) data = f.read() f.close() print(data)
模式
r / w / a 【只读只写字符串】▲
r+ / w+ / a+ 【可读可写字符串】
- rb / wb/ ab 【只读只写字节流】▲
字符串转换成字节流(二进制)
v = '你好' data = v.encode('utf-8') print(data) #以uft-8编码将v转换成二进制
字节流(二进制)转换成字符串
v = b'\xe4\xbd\xa0\xe5\xa5\xbd' data = v.decode('utf-8') print(data) #前提是你知道字节流数据是字符串以及它的编码
r+b / w+b / a+b 【可读可写字节流】
原文:https://www.cnblogs.com/elliottwave/p/12521793.html
评论(0)