题目:表格打印
详细要求:编写一个名为printTable()的函数,它接受字符串的列表的列表,将他显示在组织良好的表格中,每列右对齐。假定所有内层列表都包含同样数目的字符串。
例如:
tableData=[['apples','oranges','cherries','banana'],
['Alice','Bob','Carol','David'],
['dogs','cats','moose','goose']]
代码如下:
#! python3
# test:rjust,width
tableData=[['apples','oranges','cherries','banana'],
['Alice','Bob','Carol','David'],
['dogs','cats','moose','goose']]
def printTable(data):
colwidths=[0]*len(data)
for i in range(len(data)):
col=[]
for j in range(len(data[0])):
col.append(len(data[i][j]))
col.sort()
colwidths[i]=col[-1]
for i in range(len(data[0])):
for j in range(len(data)):
print(data[j][i].rjust(colwidths[j]),end=' ')
print()
printTable(tableData)
运行结果: