Python:如何将三个等长linspace数组按关联元素组交织组合?
按关联组交织等长数组的解决方案
方法1:使用numpy(推荐,适配linspace数组)
因为你用的是numpy的linspace生成的数值数组,直接用numpy内置函数就能高效完成分组组合:
import numpy as np # 生成示例等长linspace数组 a = np.linspace(0, 10, 3) b = np.linspace(20, 30, 3) c = np.linspace(40, 50, 3) # 将对应索引的元素分组组合 result = np.column_stack((a, b, c)) print(result)
输出结果:
[[ 0. 20. 40.] [ 5. 25. 45.] [10. 30. 50.]]
每行就是一组关联元素,完全符合你的需求。
方法2:纯Python列表处理(兼容普通列表)
如果需要将数组转为普通列表处理,用zip函数可以快速打包对应索引的元素:
import numpy as np # 先将numpy数组转为列表(如果本身就是列表可跳过此步) a = list(np.linspace(0, 10, 3)) b = list(np.linspace(20, 30, 3)) c = list(np.linspace(40, 50, 3)) # 打包关联元素为元组组 result = list(zip(a, b, c)) print(result)
输出结果:
[(0.0, 20.0, 40.0), (5.0, 25.0, 45.0), (10.0, 30.0, 50.0)]
每个元组对应一组关联元素,打印时无需计数就能直接识别。
内容的提问来源于stack exchange,提问作者cat_herder
相关产品推荐
相关产品推荐

