探索Python世界,文件操作是基础技能之一。让我们一起深入了解如何通过Python的对象模型,使用open()函数打开、读取和写入文件。
1. 用open()函数操作文件
打开文件就像获取一个文件对象的钥匙,它是进行后续读写操作的入口。以下是一个实例,展示了如何以UTF-8编码打开并操作一个文件:
file = open(r'F:\1.txt', mode='w+', encoding='UTF-8')
file.write('Hello!\nWoodman')
file.seek(0) # 重置光标至文件开头
file_content = file.read()
print(file_content)
file.close() # 文件操作完成后记得关闭
2. open()函数的参数详解
open()函数接受五个主要参数:文件路径、打开模式、缓冲大小、编码格式和错误处理方式。这里详细解析一下这些参数:
file: 文件路径,如 'c:\\1.txt'
mode: 如'r'(读取)、'w'(写入,会覆盖)、'a'(追加,不覆盖)等,加上 '+' 可读写。
buffering: 控制缓冲策略,0表示无缓冲,其他数值控制缓冲大小。
encoding: 文件的字符编码格式,如 'UTF-8' 或 'GBK'。
常用文件打开模式
3. 文件的读取与写入操作
接下来,我们看看如何读取和写入文件内容:
file.read([size]) 读取指定数量的字符,如读取18个字符:print(file.read(18))
file.readline()) 逐行读取,如读取一行:print(file.readline())
file.readlines() 读取整个文件为列表,如读取文件内容:print(file.readlines())
file.write(str) 写入字符串,如写入换行:file.write('hello,\nwoodman')
file.writelines(lines) 写入多行文本,如写入列表:file.writelines(['Python', '是一门解释型语言\n', 'python非常简单'])
4. 文件对象的其他功能
文件对象还提供了移动光标位置和获取当前位置的功能:
file.seek(偏移量, [起始位置]):移动指针,偏移量可正可负,起始位置0(文件头)、1(当前位置)、2(文件尾)。
file.tell():获取当前文件指针位置。
file.close():关闭文件以释放资源。