如何从python

时间:2018-10-25 08:34:20

标签: python file input testcase

我有一个包含许多测试用例的文件,我想将它们作为输入, 文件的容器就是这样

1 232 4343
2 343 5454
3 545 6556
...

我希望有一个地图列表,以便将输入保存如下:

[[232,4343], [343, 5454], [545,6556] , ...]

仅通过使用列表的列表索引即可轻松获得第一个输入(行数),但是如何获取其他输入并将其保存到列表中呢?
我正在使用python 3.6.5

1 个答案:

答案 0 :(得分:2)

尝试一下:

id -> 2135. start -> january. end -> march. color -> blue
--- id -> 2135. start -> march. end -> april. color -> blue
---
id -> 5342. start -> january. end -> july. color -> black
--- id -> 5342. start -> april. end -> june. color -> black
--- 

现在:

with open(filename,'r') as f:
    l=[list(map(int,i.rstrip().split()[1:])) for i in f]

是:

print(l)

或更快速地使用熊猫:

[[232,4343], [343, 5454], [545,6556]]

输出:

import pandas as pd
df=pd.read_csv(filename,sep='\s+',header=None,index_col=0)
print(df.values.tolist())

更新:

[[232, 4343], [343, 5454], [545, 6556]]

输出:

with open(filename,'r') as f:
    l=[list(map(int,i.rstrip().split())) for i in f]

或与熊猫一起使用

[[1, 232, 4343], [2, 343, 5454], [3, 545, 6556]]

这样做需要更少的代码...