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

标签 python arrays list split

我有一个如下所示的列表:['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(' ')

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

最佳答案

这可以按如下方式完成:

list(zip(*(list(map(float, s.split())) for s in coordinates)))

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

[s.split() for s in coordinates]

然后我们将 float 函数映射到所有单独的字符串上,将它们转换为 float :

[list(map(float, s.split())) for s in coordinates]

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

关于python - 拆分列表中的每个字符串并存储在多个数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47904407/

相关文章:

arrays - 在 Scala 中打印数组

list - 试图了解如何不向列表中添加元素

python - 如何对项目 :value list using another list with just items? 进行子集化

python - pandas - 选择关于属性的最后 n 行数据框

c# - 试图将 uint16 打包成字节数组 C# 的 2 个字节

python - 为什么 scipy.optimize.curve_fit 产生的参数与猜测几乎没有什么不同?

php - 从 mysql 获取数组 while

java - Hibernate 多值关联最佳实践

python - `return` 或 `del` 的类型是什么?

python - 如何从过滤后的 DataFrame 中仅获取相关索引值?