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

习题五:
编写一个名为 printTable()的函数,它接受字符串的列表的列表,将它显示在组织良好的表格中,每列右对齐。假定所有内层列表都包含同样数目的字符串。例如,该值可能看起来像这样:
tableData = [[‘apples’, ‘oranges’, ‘cherries’, ‘banana’],
[‘Alice’, ‘Bob’, ‘Carol’, ‘David’],
[‘dogs’, ‘cats’, ‘moose’, ‘goose’]]
你的 printTable()函数将打印出:
apples Alice dogs
oranges Bob cats
cherries Carol moose
banana David goose

tableData = [
	['apples', 'oranges', 'cherries', 'banana'],
	['Alice', 'Bob', 'Carol', 'David'],
	['dogs', 'cats', 'moose', 'goose']
	]
	#思路:首先必须找到每个内层列表中最长的字符串,这样整列就有足够的宽度以放下所有字符串。你可以将每一列的最大宽度,保存为一个整数的列表。
#存储字符串长度
col=[len(k) for i in tableData for k in i ]
for i in zip(*tableData):
	for k in i:
		print(k.rjust(max(col)),end='')
	print()#打印一行以后换行

发布了23 篇原创文章 · 获赞 5 · 访问量 389

猜你喜欢

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