4.10.2 字符图网格 编程练习源码

本文介绍了一种使用Python从二维字符网格生成图像的方法。通过遍历内层列表的索引,而非直接遍历列表本身,实现了从左上角开始正确绘制图像。此技巧适用于处理由字符组成的图像数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

假定有一个列表的列表, 内层列表的每个值都是包含一个字符的字符串, 像这样:
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', '.', '.', '.'],
['.', '.', '.', '.', '.', '.']]

gridindex = len(grid)
innerindex = len(grid[1])
for x in range(innerindex):
    for y in range(gridindex):
        print (grid[y][x], end="")
    print ()

执行结果:

..OO.OO..
.OOOOOOO.
.OOOOOOO.
..OOOOO..
...OOO...
....O....
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值