我现在正在学习 python 中的文件处理。如果我写 read() 方法,它的工作原理与 readline() 方法相同。它们之间一定有区别,我想了解这一点
这个问题已经被回答了无数次,并且文档也很好地描述了差异。但这里是这样的:
test.txt如果你有一个像这样的文件 ( ):
first line
second line
third line
Run Code Online (Sandbox Code Playgroud)
然后这段代码:
with open("test.txt", "r") as file:
line = file.readline()
print(line)
Run Code Online (Sandbox Code Playgroud)
将产生以下输出:
first line
Run Code Online (Sandbox Code Playgroud)
那是因为readline只读取下一行。
如果您改用此代码:
with open("test.txt", "r") as file:
content = file.read()
print(content)
Run Code Online (Sandbox Code Playgroud)
输出:
first line
second line
third line
Run Code Online (Sandbox Code Playgroud)
read()将文件的全部内容读取到字符串中。您还可以给出read()一个可选参数,它指定要从文件中读取的字符数:
with open("test.txt", "r") as file:
content = file.read(15)
print(content)
Run Code Online (Sandbox Code Playgroud)
输出:
first line
seco
Run Code Online (Sandbox Code Playgroud)
最后,您没有提到的第三个函数是readlines,它返回行(字符串)列表:
with open("test.txt", "r") as file:
lines = file.readlines()
print(lines)
Run Code Online (Sandbox Code Playgroud)
输出:
['first line\n', 'second line\n', 'third line\n']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21233 次 |
| 最近记录: |