Python 官方文档:入门教程 => 点击学习
这期内容当中小编将会给大家带来有关python 中怎么使用printTable()函数表格打印,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。编写一个名为printTable()的函数,它接受字符串的列表的
这期内容当中小编将会给大家带来有关python 中怎么使用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)
上述就是小编为大家分享的Python 中怎么使用printTable()函数表格打印了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网Python频道。
--结束END--
本文标题: python 中怎么使用printTable()函数表格打印
本文链接: https://lsjlt.com/news/228127.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0