教你如何運用python 6.7 編寫printTable()函式表格列印
導讀 | 這篇文章主要介紹了python 6.7 編寫一個名為printTable()的函式 表格列印,本文透過例項程式碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑑價值,需要的朋友可以參考下 |
編寫一個名為printTable()的函式,它接受字串的列表的列表,將它顯示在組織良好的表格中,每列右對齊。假定所有內層列表都包含同樣數目的字串
輸入:
tableData = [[‘apple',‘orange',‘cherry',‘banana'], [‘Alice',‘Bob',‘Cathy',‘David'], [‘dog',‘cat',‘bird',‘duck']]
輸出:
因此首先要找到每一個內層列表中最長的字串長度,因為我們可以對比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)
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2685738/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 教你如何運用python實現簡單檔案讀寫函式Python函式
- 如何編寫翻頁函式?函式
- 如何更好的編寫async函式函式
- python如何以表格形式列印輸出Python
- [譯] 編寫函式式的 JavaScript 實用指南函式JavaScript
- 解析如何在Bash中編寫函式函式
- 如何編寫高質量的函式 -- 敲山震虎篇函式
- 使用Python的enumerate()函式編寫更Pythonic的迴圈Python函式
- 如何編寫高質量的 JS 函式(1) -- 敲山震虎篇JS函式
- 如何編寫冪等的Bash指令碼(函式)? · Fatih Arslan指令碼函式
- 教你如何運用python/golang實現迴圈連結串列PythonGolang
- 第2章 編寫測試函式函式
- 如何使用 vue + typescript 編寫頁面 (Vue生命週期函式)VueTypeScript函式
- 如何編寫python模組Python
- 如何運用多階構建編寫優雅的DockerfileDocker
- 如何寫好 C main 函式AI函式
- 用javascript編寫簡單銀行取錢存錢流程(函式)JavaScript函式
- 教你如何運用python實現學生資訊管理系統Python
- 編寫更快地載入表格
- 如何編寫高質量的函式 -- 命名/註釋/魯棒篇函式
- 編寫小而美函式的藝術函式
- C++ 的函式分檔案編寫C++函式
- 編寫函式:遞迴求逆序 (Append Code) ★函式遞迴APP
- Python 函式如何過載?Python函式
- python如何定義函式Python函式
- 運用inlinehook主動呼叫函式inlineHook函式
- 什麼是Python函式?如何定義函式?Python函式
- 用匯編實現add函式函式
- GO語言————6.7 將函式作為引數Go函式
- 感悟篇:如何寫好函式式程式碼函式
- 教你excel表格怎麼提取手機號碼和姓名,不用公式和函式Excel公式函式
- 編寫一個通用的事件監聽函式事件函式
- Python技法:實用運維指令碼編寫(程式/檔案/目錄操作)Python運維指令碼
- 用Python編寫自己的微型RedisPythonRedis
- 教你如何用python運算元據庫mysql!!PythonMySql
- excel表格列印預覽不完整如何調整 excel表格列印不完整怎麼辦Excel
- python編碼規範以及推導式的編寫Python
- python中super函式如何使用?Python函式