shuiqinghan2012的个人空间 https://passport2.21ic.com/?875044 [收藏] [复制] [RSS]

日志

Python编程快速上手——让繁琐工作自动化 4.10.2 字符图网格

已有 633 次阅读2020-6-20 17:55 |个人分类:Python|系统分类:兴趣爱好

# 4.10.2 字符图网格
# 假定有一个列表的列表,内层列表的每个值都是包含一个字符的字符串,像这样:
# grid = [['.', '.', '.', '.', '.', '.'],
#         ['.', 'O', 'O', '.', '.', '.'],
#         ['O', 'O', 'O', 'O', '.', '.'],
#         ['O', 'O', 'O', 'O', 'O', '.'],
#         ['.', 'O', 'O', 'O', 'O', 'O'],
#         ['O', 'O', 'O', 'O', 'O', '.'],
#         ['O', 'O', 'O', 'O', '.', '.'],
#         ['.', 'O', 'O', '.', '.', '.'],
#         ['.', '.', '.', '.', '.', '.']]


你可以认为grid[x][y]是一幅“图”在x、y坐标处的字符,该图由文本字符组成。原点(0,
0)在左上角,向右x坐标增加,向下y坐标增加。



复制前面的网格值,编写代码用它打印出图像。





..OO.OO..

.OOOOOOO.

.OOOOOOO.

..OOOOO..

...OOO...

....O....







grid = [['.', '.', '.', '.', '.', '.'],
        ['.', 'O', 'O', '.', '.', '.'],
        ['O', 'O', 'O', 'O', '.', '.'],
        ['O', 'O', 'O', 'O', 'O', '.'],
        ['.', 'O', 'O', 'O', 'O', 'O'],
        ['O', 'O', 'O', 'O', 'O', '.'],
        ['O', 'O', 'O', 'O', '.', '.'],
        ['.', 'O', 'O', '.', '.', '.'],
        ['.', '.', '.', '.', '.', '.']]
print(len(grid[0]))
print(len(grid))
def common(grid):
    '''如下实现行列转置打印,题目要求'''
    for y in range(len(grid[0])):  #y为原坐标的x
        for x in range(len(grid)): #x为原坐标的y
            print(grid[x][y],end='')#输出x,y即为原坐标的y,x,末尾不换行
        print()#每打印一行后换行

    '''如下实现原位置直接打印'''
    # for y in range(len(grid)):
    #     for x in range(len(grid[0])):
    #         print(grid[y][x],end='')
    #     print()
common(grid)

路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)