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添加字符并没有以任何方式使示例更清晰。