如何使用Python只获取文件的第一行作为字符串?
当前回答
这里有很多其他的答案,但准确地回答你问的问题(在@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]
换句话说,如果您已经读取了文件(如您所说),并且内存中有一大块数据,那么为了有效地从其中获取第一行,只需对换行符执行split(),并从结果列表中获取第一个元素。
注意,这并不包括行末的\n字符,但我假设您根本不需要它(单行文件甚至可能没有)。还要注意的是,尽管它非常简短和快速,但它确实复制了数据,所以对于一个非常大的内存块,您可能不会认为它是“有效的”。一如既往,这取决于……
其他回答
这应该做到:
f = open('myfile.txt')
first = f.readline()
要返回打开文件的开头,然后返回第一行,请执行以下操作:
my_file.seek(0)
first_line = my_file.readline()
这里有很多其他的答案,但准确地回答你问的问题(在@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]
换句话说,如果您已经读取了文件(如您所说),并且内存中有一大块数据,那么为了有效地从其中获取第一行,只需对换行符执行split(),并从结果列表中获取第一个元素。
注意,这并不包括行末的\n字符,但我假设您根本不需要它(单行文件甚至可能没有)。还要注意的是,尽管它非常简短和快速,但它确实复制了数据,所以对于一个非常大的内存块,您可能不会认为它是“有效的”。一如既往,这取决于……
infile = open('filename.txt', 'r')
firstLine = infile.readline()
如果你想读取file。txt
line1 helloworld
import linecache
# read first line
print(linecache.getline('file.txt'), 1)
>helloworld
推荐文章
- 如何为python模块的argparse部分编写测试?
- 在python中是否有用于均方根误差(RMSE)的库函数?
- 如何从matplotlib (pyplot。Figure vs matplotlib。figure) (frameon=False matplotlib中有问题)
- django test app error -在创建测试数据库时出现错误:创建数据库的权限被拒绝
- 识别使用pip安装的python包的依赖关系
- 从字符串变量导入模块
- 如何删除Python中的前导空白?
- python中的assertEquals和assertEqual
- 如何保持Python打印不添加换行符或空格?
- 为什么Python的无穷散列中有π的数字?
- Python 3.7数据类中的类继承
- 如何在PyTorch中初始化权重?
- 计数唯一的值在一列熊猫数据框架像在Qlik?
- 使用Pandas将列转换为行
- 从matplotlib中的颜色映射中获取单个颜色