我接触到了将输入文件组织成字典和我的算法的问题,我决定首先将输入文件转换为每行(str)的列表。基本上,给出:将输入文件转换为每行的列表
ABCDE
FGHIJ ABCDEFG
FGHIJ ABCDEFG LOLOA
将变成
[['ABCDE'], ['FGHIJ', 'ABCDEFG'], ['FGHIJ', 'ABCDEFG', 'LOLOA']]
我不确定我该怎么开始。
我接触到了将输入文件组织成字典和我的算法的问题,我决定首先将输入文件转换为每行(str)的列表。基本上,给出:将输入文件转换为每行的列表
ABCDE
FGHIJ ABCDEFG
FGHIJ ABCDEFG LOLOA
将变成
[['ABCDE'], ['FGHIJ', 'ABCDEFG'], ['FGHIJ', 'ABCDEFG', 'LOLOA']]
我不确定我该怎么开始。
你需要做两件事情:
读取的文件中。这最好用with-statement完成。
使用list comprehension或类似的设备来分割空白的行。
下面是一个演示:
>>> with open('/path/to/file.txt') as myfile:
... print [line.split() for line in myfile]
...
[['ABCDE'], ['FGHIJ', 'ABCDEFG'], ['FGHIJ', 'ABCDEFG', 'LOLOA']]
>>>
fname = "*.txt"
f = open(fname,'r')
lines = f.readlines()
开放的方式打开文件,和 'R' 选项意味着读它(其他选项包括 'W' 写)
由于readlines返回字符串列表而不是字符串列表列表,因此不是很正确。 –
如果没有给出模式,'open'默认为读取模式。 – iCodez
@RobParker对..我的错,需要用split来分隔线 –
你可以通过阅读文件开始。你甚至不能这样做? –