如何将文件逐行读取到列表中?

新手上路,请多包涵

如何在 Python 中读取文件的每一行并将每一行存储为列表中的一个元素?

我想逐行读取文件并将每一行附加到列表的末尾。

原文由 Julie Raswick 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 231
1 个回答

此代码会将整个文件读入内存并从每行的末尾删除所有空白字符(换行符和空格):

 with open(filename) as file:
    lines = [line.rstrip() for line in file]

如果您正在处理一个大文件,那么您应该逐行阅读和处理它:

 with open(filename) as file:
    for line in file:
        print(line.rstrip())

在 Python 3.8 及更高版本中,您可以像这样使用 海象运算符 的 while 循环:

 with open(filename) as file:
    while (line := file.readline().rstrip()):
        print(line)

根据您计划对文件执行的操作以及文件的编码方式,您可能还需要手动设置 访问模式 和字符编码:

 with open(filename, 'r', encoding='UTF-8') as file:
    while (line := file.readline().rstrip()):
        print(line)

原文由 SilentGhost 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题