python编程案例之for语句、range( )方法、list变量、rjust( )方法、函数调用的综合使用

案例要求:


编写一个名为 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']]

def printTable(tableData):
    colWidths = [0] * len(tableData)    #colWidths赋值为列表
    for i in range(len(tableData)):     #外循环三次
        colWidths[i] = 0                #将每行列表里的最大字符宽度赋给colWidths
        for j in range(len(tableData[0])):#内循环四次
            if colWidths[i] < len(tableData[i][j]):
                colWidths[i] = len(tableData[i][j])

    for j in range(len(tableData[0])):  #外循环四次
        for i in range(len(tableData)): #内循环三次
            print(tableData[i][j].rjust(colWidths[i]+1),end='')
        print()                         #换行

printTable(tableData)              



猜你喜欢

转载自blog.csdn.net/itlife20081224/article/details/79881053
今日推荐