代码之家  ›  专栏  ›  技术社区  ›  Noah Clark

帮助在python中打印列表内部列表中的单个项目

  •  0
  • Noah Clark  · 技术社区  · 15 年前

    我首先创建网格:

    grid = []
    for x in range(1,collength + 1):
        for y in range(1,collength + 1):
            grid.append([x,y,'e'])
    

    然后我为我的网格生成que,我想根据列表中列表的0、1和2的位置来操作que:

    floodfillque = []
    
    grid = floodfillque
    
    for each in floodfillque:
        floodfilllist = []
        currentfloodfill = []
        print '::'
        print each[1]
    

    但是当我试图打印每个[1]时,我得到的是整个列表,而不仅仅是列表中的第n个元素

    我做错什么了?

    1 回复  |  直到 15 年前
        1
  •  2
  •   Mark Byers    15 年前

    在编写时,代码会在空列表上迭代。我想你的意思是:

    for each in grid:
    

    或者:

    floodfillque = grid
    

    此代码工作正常:

    collength = 3
    
    grid = []
    for x in range(1,collength + 1):
        for y in range(1,collength + 1):
            grid.append([x,y,'e'])
    
    for each in grid:
        floodfilllist = []
        currentfloodfill = []
        print '::'
        print each[1]
    

    结果:

    ::
    1
    ::
    2
    ::
    3
    ::
    1
    ::
    2
    ::
    3
    ::
    1
    ::
    2
    ::
    3