如何拆分此列表?

2024-10-03 09:11:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试从.txt文件的第二列中读取元素,但无论我尝试什么,都无法读取。最接近的格式是:

eigenlist = ['1    -58.44285   0.00000     3.000   0.000', 
             '2    -58.10455   0.33830     1.000   0.000',  
             '3    -57.57816   0.86469     0.000   1.000', 
             '4    -57.48698   0.95587     4.000   0.000', 
             '5    -56.90493   1.53792     5.000   0.000', 
             '6    -56.54419   1.89867     3.000   0.000']

我只需要每个元素中的第二个数字。你知道吗


Tags: 文件txt元素格式数字eigenlist
2条回答

一份清单怎么样?你知道吗

a = [float(s.split()[1]) for s in eigenlist]

其他答案很好地回答了这个问题。我只是想证明你不用库就可以做到这一点。你知道吗

>>> new_list = []
>>> for sublist in eigenlist:
...     new_list.append([s for s in sublist.split(' ') if s])
...
>>> new_list
[['1', '-58.44285', '0.00000', '3.000', '0.000'], ['2', '-58.10455', '0.33830', '1.000', '0.000'], ['3', '-57.57816', '0.86469', '0.000', '1.000'], ['4', '-57.48698', '0.95587', '4.000', '0.000'], ['5', '-56.90493', '1.53792', '5.000', '0.000'], ['6', '-56.54419', '1.89867', '3.000', '0.000']]

您现在可以简单地访问每个元素:

>>> for element in new_list:
...     print(element[1])
...
-58.44285
-58.10455
-57.57816
-57.48698
-56.90493
-56.54419

相关问题 更多 >