项目:表格打印(字符图网格进阶、rjust、列表中最长的字符串长度)
2021/8/9 6:08:12
本文主要是介绍项目:表格打印(字符图网格进阶、rjust、列表中最长的字符串长度),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
项目要求:编写一个名为 printTable()的函数,它接受字符串的列表的列表,将它显示在组织良好的表格中,每列右对齐。
tableData = [['apples', 'oranges', 'cherries', 'banana'],['Alice', 'Bob', 'Carol', 'David'],['dogs', 'cats', 'moose', 'goose']]
打印成以下格式
apple Alice dogs oranges Bob cats cherries Carol moose banana David goose
与之前的字符图网格很类似
http://www.jdlhm.com/?p=960
tableData = [['apple', 'oranges', 'cherries', 'banana'], ['Alice', 'Bob', 'Carol', 'David'], ['dogs', 'cats', 'moose', 'goose']] def printTable(): max_phy = [] for items in tableData: max_char = len(max(items, key=len)) max_phy.append(max_char) for j in range(len(tableData[0])): for i in range(len(tableData)): print(tableData[i][j].rjust(max_phy[i]), end=' ') print() printTable()
1. 定义一个空列表,用来tableData列表中,每个子列表里长度最大的那个
2. 假定列表里的小列表为items,以字符串长度(len)为key,求出每个items中最长的字符串长度
3. 将每个最大长度放入到空列表
4. 根据每个items中最大长度进行右对齐,每打印一个字符串结尾加空格
5. 当打印完一行,打印一个换行符
6. 求列表中最长的字符串长度还有一种写法(不知道是不是固定写法,去问一下)
tableData = [['apple', 'oranges', 'cherries', 'banana'], ['Alice', 'Bob', 'Carol', 'David'], ['dogs', 'cats', 'moose', 'goose']] def printTable(): max_phy = [] for item_out in tableData: max_char = max(len(item_in) for item_in in item_out) max_phy.append(max_char) for j in range(len(tableData[0])): for i in range(len(tableData)): print(tableData[i][j].rjust(max_phy[i]), end=' ') print() printTable()
这篇关于项目:表格打印(字符图网格进阶、rjust、列表中最长的字符串长度)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-04TiDB 资源管控的对撞测试以及最佳实践架构
- 2024-07-03万字长文聊聊Web3的组成架构
- 2024-07-02springboot项目无法注册到nacos-icode9专业技术文章分享
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现