# 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)