Python文件操作核心是掌握open()函数模式参数及with语句;'r'只读、'w'清空写、'a'追加、'r+'读写、'b'二进制;推荐with自动关闭,避免资源泄漏。
Python文件操作的核心是掌握open()函数的用法和文件对象的常用方法。关键不在记住所有参数,而在于理解模式(mode)如何决定读写行为、何时需要手动关闭、以及为什么推荐用with语句。
模式字符串控制文件以什么方式打开,最常用的是:
'rb'、'wb'
文本模式下默认使用系统编码(通常是UTF-8),若处理中文建议显式指定encoding='utf-8',避免乱码。
读取方法的选择取决于数据大小和使用场景:
for line in f:,内存友好,推荐用于大文件示例:with open('data.txt', 'r', encoding='utf-8') as f:
for line in f:
print(line.strip()) # strip()去掉换行符和空格
写入操作不会自动加换行符,需手动添加'\n':
常见错误:用writelines(['a', 'b', 'c'])结果是'abc',不是三行。正确写法是['a\n', 'b\n', 'c\n']或循环调用write()并加\n。
不用with就得手动调用.close(),一旦出错可能漏关,导致资源占用或写入失败:
with open(...)会在代码块结束时自动关闭文件,无论是否异常ValueError或KeyboardInterrupt,文件仍能正常关闭不推荐:f = open('test
.txt', 'w')
f.write('hello')
f.close() # 如果write出错,close就不会执行