学习python笔记《python编程快速上手-让繁琐工作自动化》之三

习题三:
有趣的表格

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', '.', '.', '.'],
		['.', '.', '.', '.', '.', '.']]
需要打印出如下效果:
result=[('.', '.', '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列表顺时针旋转90度,'''
def reseau(lists):#循环取值
	rows=len(lists)#有多少行.
	min_list=[len(lists[i]) for i in range(rows)]
	column=min(min_list)#算出最短列数
	for y in range(column):
		for x in range(rows):
			print(lists[x][y],end='')
		print()#换行
**#更加简单的方法用zip()函数,一行解决
new_list=[i for i in zip(*grid)]
pprint.pprint(new_list)**#导入pprint模块
发布了23 篇原创文章 · 获赞 5 · 访问量 391

猜你喜欢

转载自blog.csdn.net/weixin_43287121/article/details/104479055