国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

python 6.7 編寫printTable()函數表格打印(完整代碼)

瀏覽:5日期:2022-08-01 10:04:45

編寫一個名為printTable()的函數,它接受字符串的列表的列表,將它顯示在組織良好的表格中,每列右對齊。假定所有內層列表都包含同樣數目的字符串

輸入:

tableData = [[‘apple’,‘orange’,‘cherry’,‘banana’],[‘Alice’,‘Bob’,‘Cathy’,‘David’],[‘dog’,‘cat’,‘bird’,‘duck’]]

輸出:

python 6.7 編寫printTable()函數表格打印(完整代碼)

因此首先要找到每一個內層列表中最長的字符串長度,因為我們可以對比tableData列表和輸出的截圖。不難發現輸出的第一行為內層列表的首項,第二行為每個內層列表的第二項;第一列為第一個內置列表的所有項并且是右對齊(與最長項對齊),因此:

colWidths = [0]*len(tableData)#colWidths列表中每個元素放置每個內置列表的最長字符串長度len1 = 0#分別求列表的每一個內置列表中最長的字符串的長度for i in range(len(tableData)): for j in range(len(tableData[i])): if len(tableData[i][j]) > colWidths[i]:#找最長 colWidths[i] = len(tableData[i][j])

其次我們可以看到,打印得到的結果為一個四行三列的表格,因此可以得出函數printTable()中可以有一個兩層的嵌套循環,第一層循環長度為4,第二層循環長度為3。而tableData列表共有3個內置列表,每個內置列表共有4項,因此可以以內層列表的長度為第一層循環長度,外層列表的長度為第二層循環的長度。同時表格的每一列均為右對齊,對齊標準為內層列表的最長項的長度,因此每一次對齊參數可以直接使用colWidths對應的值。

def printTable(List1,List2): #第一層循環 for i in range(len(List1[0])): #第二層循環 for j in range(len(List1)): print(List1[j][i].rjust(int(List2[j])),end=’ ’) print()

完整代碼

def printTable(List1,List2): #第一層循環 for i in range(len(List1[0])): #第二層循環 for j in range(len(List1)): print(List1[j][i].rjust(int(List2[j])),end=’ ’)#打印完一行再換行 print()tableData = [ [’apples’,’oranges’,’cherries’,’banana’], [’Alice’,’Bod’,’Carol’,’David’], [’dogs’,’cats’,’moose’,’goose’] ]colWidths = [0]*len(tableData)#colWidths列表中每個元素放置每個內置列表的最長字符串長度len1 = 0#分別求列表的每一個內置列表中最長的字符串的長度for i in range(len(tableData)): for j in range(len(tableData[i])): if len(tableData[i][j]) > colWidths[i]: colWidths[i] = len(tableData[i][j])printTable(tableData,colWidths)

總結

到此這篇關于python 6.7 編寫一個名為printTable()的函數 表格打印的文章就介紹到這了,更多相關python printTable()函數 表格打印內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 崇礼县| 商丘市| 临邑县| 拉萨市| 靖宇县| 岑巩县| 台前县| 云浮市| 横山县| 巧家县| 加查县| 乐亭县| 张掖市| 璧山县| 德钦县| 栾川县| 安宁市| 远安县| 湾仔区| 聂拉木县| 根河市| 崇阳县| 股票| 通许县| 贵定县| 西盟| 华安县| 淄博市| 北票市| 永德县| 绥江县| 文成县| 波密县| 临城县| 临洮县| 湖北省| 稻城县| 桂平市| 邹平县| 东城区| 柳江县|