Python 表格打印

Python 表格打印,第1张

概述Python编程快速上手实践项目题目,欢迎指证与优化! 编写一个名为 printTable()的函数, 它接受字符串的列表的列表,将它显示在组 织良好的表格中, 每列右对齐。假定所有内层列表都包含同样数目的字符串。例如, 该值可能看起来像这样: tableData = [[‘apples‘, ‘oranges‘, ‘cherries‘, ‘banana‘], [‘Alice‘, ‘Bob‘, ‘C Python编程快速上手实践项目题目,欢迎指证与优化!
编写一个名为 printtable()的函数, 它接受字符串的列表的列表,将它显示在组
织良好的表格中, 每列右对齐。假定所有内层列表都包含同样数目的字符串。例如,
该值可能看起来像这样:
tableData = [[‘apples‘,‘oranges‘,‘cherrIEs‘,‘banana‘],
[‘Alice‘,‘Bob‘,‘Carol‘,‘DavID‘],
[‘dogs‘,‘cats‘,‘moose‘,‘goose‘]]
你的 printtable()函数将打印出:


思路一:
1.计算列表中(包括内部列表)最长元素的长度;
2.以最长元素的长度值作为全局右对齐的值打印列表
代码:

import copytableData = [[‘apples‘,[‘Alice‘,‘Bob1111111111111‘,[‘dogs‘,‘goose‘]]def count_wIDth(the_List):    #定义函数:计算列表字符串最长值    new_List=copy.deepcopy(the_List)    #复制列表保存到独立的新列表    colWIDths = [0] * len(new_List)    #创建一个列表,数目等同于tableData    i=0    while i < len(new_List):        new_List[i].sort(key = lambda i:len(i),reverse = True)        ‘‘‘重新按照字符长度逆序(从大到小),lamba表示匿名函数,key = lambda i:len(i)代表           以元素i的len()值作为比较        ‘‘‘        colWIDths[i]=new_List[i][0]      #  print (colWIDths[i])        i=i+1    #将tableData[i]降序排序,取最大值(第一个),得到一个每个内层列表中最长的字符串的列表    colWIDths.sort(key = lambda i:len(i),reverse = True)    wIDth=len(colWIDths[0])    #将colWIDths降序排序,取最大值(第一个)并计算其字符宽度    #print (wIDth)    #print (the_List)    #print (new_List)    return wIDthdef List_rjust(the_List,wIDth):    for j in range (len(the_List[0])):        for i in range (len(the_List)):            print(the_List[i][j].rjust(wIDth),end=" ")        print("\r")List_rjust(tableData,count_wIDth(tableData))

思路二:
1.计算列表(数组,没有嵌套数组)最长元素的值;
2.按照列表最长元素的值打印列表(每列的最长值可能不同)
代码:

tableDate=[[‘apples‘,‘goose‘]]def findmaxlen(Dates):    ‘‘‘    计算一个数组中最长元素的长度    ‘‘‘    maxlen=0    for i in range(len(Dates)):        if len(Dates[i])>maxlen:            maxlen=len(Dates[i])    return maxlen#print(findmaxlen(tableDate[0]))def printtable(the_List):    for j in range (len(the_List[0])):#打印内部数组的第j个        for i in range (len(the_List)):#打印数组的第i个            print(the_List[i][j].rjust(findmaxlen(the_List[i])),end=‘ ‘)            #打印第i个数组的第j个内部数组时,按照第i个数组中的元素最长值右对齐        print("\r")printtable(tableDate)
总结

以上是内存溢出为你收集整理的Python 表格打印全部内容,希望文章能够帮你解决Python 表格打印所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1195410.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-03
下一篇2022-06-03

发表评论

登录后才能评论

评论列表(0条)

    保存