Python拆分列表元素

时间:2016-06-06 05:10:26

标签: python list

我有一个清单:

false

我想按如下方式拆分列表中的每个元素:

lines = [['1 1 4.59114 0.366832 -9.56424 '], ['2 1 5.24742 -0.870574 -8.40649 '], ['3 2 5.21995 -0.38856 -7.39145 ']]

我尝试了以下代码:

[['1', '1 4.59114', '0.366832', '-9.56424'], ['2', '1', '5.24742', '-0.870574', '-8.40649 '], ['3', '2', '5.21995', '-0.38856', '-7.39145']]

但是,拆分不适用于单个列表元素。有什么想法吗?

3 个答案:

答案 0 :(得分:4)

你需要在空格字符上split,而不是在\t标签上:

>>> lines = [['1 1 4.59114 0.366832 -9.56424 '], ['2 1 5.24742 -0.870574 -8.40649 '], ['3 2 5.21995 -0.38856 -7.39145 ']]
>>> [line[0].split() for line in lines]
[['1', '1', '4.59114', '0.366832', '-9.56424'],
 ['2', '1', '5.24742', '-0.870574', '-8.40649'],
 ['3', '2', '5.21995', '-0.38856', '-7.39145']]

答案 1 :(得分:2)

尝试一下:

System.out.println(first + " * " + *second + " = " + v);

输出:

print([list[0].split() for list in lines])

答案 2 :(得分:1)

这是字符串列表的列表。

lines[0][0].split(' ') # lines[0][0] is a string so you can use split

会给你[' 1',' 1',' 4.59114',' 0.366832',' - 9.56424','']

你可以做到

[x[0].split(' ') for x in lines]

获得理想的结果。