当前位置:  开发笔记 > 编程语言 > 正文

创建包含文件的每一行的列表

如何解决《创建包含文件的每一行的列表》经验,为你挑选了4个好方法。

我正在尝试打开一个文件并创建一个列表,其中每行都从文件中读取.

   i=0
   List=[""]
   for Line in inFile:
      List[i]=Line.split(",")
      i+=1
   print List

但是这个示例代码因为这样的i+=1说法而给我一个错误index is out of range.这是我的问题?如何编写代码以便使用InFile中的每个新行增加列表?



1> Brian C. Lan..:

它比那容易得多:

List = open("filename.txt").readlines()

这将返回文件中每行的列表.


无需关闭它,当文件超出范围时,python会自动处理.
关闭文件怎么样?

2> Absulit..:

我是这样做的

lines_list = open('file.txt').read().splitlines()

每一行都带有行尾字符(\n\r); 这样就删除了字符.


谢谢,这删除了换行符,正如我从接受的答案中所期望的那样:) +1

3> Dustin..:

请阅读PEP8.你离python惯例很远.

如果你想要一个用逗号分割的每行的列表列表,我会这样做:

l = []
for line in in_file:
    l.append(line.split(','))

您将在每条记录上获得换行符.如果你不想那样:

l = []
for line in in_file:
    l.append(line.rstrip().split(','))



4> orip..:
my_list = [line.split(',') for line in open("filename.txt")]


我担心跳到列表理解中的人仍然试图理解基本的python可能有点大一步.:)
推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有