简介
文本文件的读写主要通过open()所构建的文件对象来实现。
基本格式
f = open(文件名,模式)
最常用的模式有:
- “r” # 只读
- “w” # 写入 —->如果文件中已经有内容,会把内容抹掉,如果不存在该文件,会新建文件
- “a” #追加模式 —–>在已有的文字后添加文字
- “b” #二进制模式(还在其他模式中追加使用)—–>一般在处理音频、图像等文件的时候使用
- “+” #读/写模式(可在其他模式中追加使用) —–>r+、w+ 可读可写
1 |
|
输出
1 | 大家好,我是王尼玛 |
1 |
|
输出
1 | 0123Hello9 |
Tips:
1.
以上所讲的仅仅是Python最基本的文件读写功能。更加丰富的文件读写功能由Python的标准库提供。
2.
read() readline()以及readlines()用法
read() 每次读取整个文件,它通常用于将文件内容放到一个字符串变量中。然而 .read() 生成文件内容最直接的字符串表示,但对于连续的面向行的处理,它却是不必要的,并且如果文件大于可用内存,则不可能实现这种处理。
.readline() 和 .readlines() 非常相似。它们都在类似于以下的结构中使用:1
2
3fh = open('c:\\autoexec.bat')
for line in fh.readlines():
print(line)
.readline() 和 .readlines() 之间的差异是后者一次读取整个文件,象 .read() 一样。.readlines() 自动将文件内容分析成一个行的列表,该列表可以由 Python 的for … in …结构进行处理。另一方面,.readline() 每次只读取一行,通常比 .readlines() 慢得多。仅当没有足够内存可以一次读取整个文件时,才应该使用 .readline()。(readlines()的输出格式[“I’ll write this message for you\n”, “hehe,that’s will be ok.\n”])