将输入文件转换为每行的列表

时间:2014-03-30 20:39:26

标签: python list file input

我遇到了将输入文件组织到字典中的问题,对于我的算法,我决定首先将输入文件转换为每行(str)的列表。基本上,给出:

ABCDE
FGHIJ ABCDEFG
FGHIJ ABCDEFG LOLOA

它会变成

[['ABCDE'], ['FGHIJ', 'ABCDEFG'], ['FGHIJ', 'ABCDEFG', 'LOLOA']]

我不确定如何开始。

2 个答案:

答案 0 :(得分:4)

你需要做两件事:

  1. 读入文件。最好使用with-statement

  2. 完成此操作
  3. 使用list comprehension或类似设备拆分空白行。

  4. 以下是演示:

    >>> with open('/path/to/file.txt') as myfile:
    ...     print [line.split() for line in myfile]
    ...
    [['ABCDE'], ['FGHIJ', 'ABCDEFG'], ['FGHIJ', 'ABCDEFG', 'LOLOA']]
    >>>
    

答案 1 :(得分:0)

fname = "*.txt"

f = open(fname,'r')

lines = f.readlines()

打开意味着打开文件,并且' r'选项意味着阅读它(其他选项包括' w'写)