使用单元格创建地图的Python函数

时间:2018-11-26 00:29:51

标签: python

我想创建一个包含具有功能的单元格的正方形地图。函数应采用一个表示映射范围的变量(范围为3表示映射为3x3 = 9个单元格,依此类推)。每个单元格应具有如下所示的坐标: A1,A2,A3 ... B1,B2,B3 ... C1,C2,C3 ...等等。 Ofc,最大范围应为26(26x26)。 我想将这些单元格添加到列表中。 我编写了一个代码来执行此操作,但仅使用数字,现在不介绍如何使用字母创建坐标。 这是代码:

def mapCells(n):

    cell_List = []

    for x in range (1,n+1):
        for y in range (1, n+1):

            cell = str(x) + str(y)

            cell_List.append(cell)

    print(cell_List)

mapCells(3)

2 个答案:

答案 0 :(得分:0)

只需将str(x)代码替换为chr(64 + x)

答案 1 :(得分:0)

您还可以使用string.ascii_uppercase获取字母,并使用长度为n的切片作为坐标:

import string

def mapCells(n):
    cell_List = []
    for x in string.ascii_uppercase[:n]:
        for y in range(1, min(n + 1, 27)):
            cell = x + str(y)
            cell_List.append(cell)
    print(cell_List)

mapCells(3)

输出

['A1', 'A2', 'A3', 'B1', 'B2', 'B3', 'C1', 'C2', 'C3']