Python如何深入理解IO编程细节?

2026-05-21 21:450阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1994个文字,预计阅读时间需要8分钟。

Python如何深入理解IO编程细节?

文件读写+读取文件+try:

文件读写

读文件

try: # windows下utf8 f = open('./README.md', 'r', encoding='utf8', errors='ignore') print(f.read()) finally: f and f.close() # 用with简化 with open('./README.md', 'r', encoding='utf8') as f: print(f.read()) # 迭代读取大文件 with open('./README.md', 'r', encoding='utf8') as f: # readline()可以每次读取一行内容 for line in f.readlines(): # 把末尾的'\n'删掉 print(line.strip()) # 读取二进制文件 f = open('/Users/michael/test.jpg', 'rb') f.read() # b'\xff\xd8\xff\xe1\x00\x18Exif\x00\x00...' # 十六进制表示的字节

写文件

写文件和读文件是一样的,唯一区别是调用open()函数时,传入标识符'w'或者'wb'表示写文本文件或写二进制文件

可以反复调用write()来写入文件,但是务必要调用f.close()来关闭文件。当我们写文件时,操作系统往往不会立刻把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。只有调用close()方法时,操作系统才保证把没有写入的数据全部写入磁盘。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了。

阅读全文

本文共计1994个文字,预计阅读时间需要8分钟。

Python如何深入理解IO编程细节?

文件读写+读取文件+try:

文件读写

读文件

try: # windows下utf8 f = open('./README.md', 'r', encoding='utf8', errors='ignore') print(f.read()) finally: f and f.close() # 用with简化 with open('./README.md', 'r', encoding='utf8') as f: print(f.read()) # 迭代读取大文件 with open('./README.md', 'r', encoding='utf8') as f: # readline()可以每次读取一行内容 for line in f.readlines(): # 把末尾的'\n'删掉 print(line.strip()) # 读取二进制文件 f = open('/Users/michael/test.jpg', 'rb') f.read() # b'\xff\xd8\xff\xe1\x00\x18Exif\x00\x00...' # 十六进制表示的字节

写文件

写文件和读文件是一样的,唯一区别是调用open()函数时,传入标识符'w'或者'wb'表示写文本文件或写二进制文件

可以反复调用write()来写入文件,但是务必要调用f.close()来关闭文件。当我们写文件时,操作系统往往不会立刻把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。只有调用close()方法时,操作系统才保证把没有写入的数据全部写入磁盘。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了。

阅读全文