Tor*_*amo 314
使用.readline()方法(Python 2 docs,Python 3 docs):
with open('myfile.txt') as f:
first_line = f.readline()
Run Code Online (Sandbox Code Playgroud)
一些说明:
f.readline()将包含尾随换行符.您可能希望使用它f.readline().strip()来删除换行符.with当块结束时,该语句会自动再次关闭文件.with语句仅适用于Python 2.5及更高版本,在Python 2.5中需要使用from __future__ import with_statementJae*_*ebi 20
infile = open('filename.txt', 'r')
firstLine = infile.readline()
Run Code Online (Sandbox Code Playgroud)
gho*_*g74 17
fline=open("myfile").readline().rstrip()
Run Code Online (Sandbox Code Playgroud)
要返回打开文件的开头然后返回第一行,请执行以下操作:
my_file.seek(0)
first_line = my_file.readline()
Run Code Online (Sandbox Code Playgroud)
这里有很多其他答案,但要准确回答你提出的问题(在@MarkAmery之前编辑原始问题并改变其含义):
>>> f = open('myfile.txt')
>>> data = f.read()
>>> # I'm assuming you had the above before asking the question
>>> first_line = data.split('\n', 1)[0]
Run Code Online (Sandbox Code Playgroud)
换句话说,如果你已经读过文件(如你所说),并且在内存中有一大块数据,那么为了有效地从中获取第一行,请在换行符上执行split(), only,并从结果列表中获取第一个元素.
请注意,这不包括\n行尾的字符,但我假设您仍然不想要它(并且单行文件甚至可能没有).另请注意,尽管它非常简短快速,但它确实会复制数据,因此对于非常大的内存块,您可能不会认为它"高效".一如既往,这取决于......
| 归档时间: |
|
| 查看次数: |
290587 次 |
| 最近记录: |