Python,如何修剪数组中的列表
我有一个包含一些坐标的数组,我需要剪切它并对它们进行排序:Python,如何修剪数组中的列表,python,list,arraylist,Python,List,Arraylist,我有一个包含一些坐标的数组,我需要剪切它并对它们进行排序: arr = [ [211, 211, 211, 132, 132, 132], # Some x Position [47, 47, 47, 66, 66, 66] # Some Y Position ] 第一次出现的arr[0]是某个XPosition,在arr[1]中是它的YPosition 对于我的程序,我需要具有以下数组语法: arr = [ [211,
arr = [
[211, 211, 211, 132, 132, 132], # Some x Position
[47, 47, 47, 66, 66, 66] # Some Y Position
]
第一次出现的arr[0]是某个XPosition,在arr[1]中是它的YPosition
对于我的程序,我需要具有以下数组语法:
arr = [
[211, 211, 211], # x Position
[47, 47, 47], # y Position
[132, 132, 132], # x Position
[66, 66, 66] # y Position
]
有人能告诉我怎么做吗?
我希望我已经说清楚了。使用切片
[ [arr[0][:3], arr[1][:3]], [arr[0][3:], arr[1][3:]] ]
如果我了解你的问题,但我一点也不确定我是否了解,这就是解决方案:
result = []
for i in range(0,len(arr[0]), 3):
result.extend( [ arr[0][i:i+3], arr[1][i:i+3] ] )
此外,正如评论中已经指出的,如果这样说,您的输入数据将更具可读性:
arr = [
[211, 211, 211, 132, 132, 132], # these are x values
[47, 47, 47, 66, 66, 66] # and these are y's
]
好的,您有两个子列表,每个子列表按顺序由三元组组成,您希望构建一个新列表,其中包含从两个子列表的三元组构建的对
在Python中,is可以写成:arr不是有效的Python列表您是否只需要每个子列表中的前三个元素,即[sublist[:3]表示arr中的子列表]?为什么arr不是有效的Python列表@ncica@Wimanicesir例如211x是无效的syntax添加字符并没有以任何方式使示例更清晰。