拆分列表中的每个字符串并存储在多个数组中

zeb*_*b92 1 python arrays split list

我有一个看起来像这样的列表: ['1 0 0','2 0.5 0.25','3 1 0.5','4 1.5 0.75']

我想这三个阵列来结束:[1,2,3,4][0,0.5,1,1.5][0,0.25,0.5,0.75]

即我想要每个列表项的第一个值并将其存储在一个数组中,并对第二个和第三个值执行相同的操作。

我试过这个

for i in coordinates[:]:
    number,x,y=i.split(' ')
Run Code Online (Sandbox Code Playgroud)

也尝试使用number[]number.append 但这些似乎都不起作用

ikk*_*kuh 6

这可以按如下方式完成:

list(zip(*(list(map(float, s.split())) for s in coordinates)))
Run Code Online (Sandbox Code Playgroud)

首先我们遍历列表中的所有字符串并拆分它们

[s.split() for s in coordinates]
Run Code Online (Sandbox Code Playgroud)

然后我们在所有单独的字符串上map使用float函数将它们转换为浮点数:

[list(map(float, s.split())) for s in coordinates]
Run Code Online (Sandbox Code Playgroud)

然后我们使用zip您想要的方式获取它们。