python 表格打印代码实例解析


Posted in Python onOctober 12, 2019

编写一个名为printTable()的函数,它接受字符串的列表的列表,将它显示在组织良好的表格中,每列右对齐。假定所有内层列表都包含同样数目的字符串。例如,该值可能看起来像这样:

table_data = [['apples', 'oranges', 'cherries', 'banana'],
    ['Alice', 'Bob', 'Carol', 'David'],
    ['dogs', 'cats', 'moose', 'goose']]

你的 printTable()函数将打印出:

apples Alice dogs
oranges Bob cats
cherries Carol moose
banana David goose 

示例代码1:

import copy
 
 
def count_width(the_list):
 new_list = copy.deepcopy(the_list)
 col_widths = [0]*len(the_list)
 i = 0
 while i < len(new_list):
  new_list[i].sort(key=lambda x: len(x), reverse=True)
  col_widths[i] = new_list[i][0]
  i = i+1
 return col_widths
def list_ljust(the_list):
 widths = count_width(the_list)
 for j in range(len(the_list[0])):
  for i in range(len(the_list)):
   print(the_list[i][j].ljust(len(widths[i])), end=' ')
  print('\r')
table_data = [['apples', 'oranges', 'cherries', 'banana'],
    ['Alice', 'Bob', 'Carol', 'David'],
    ['dogs', 'cats', 'moose', 'goose']]
list_ljust(table_data) 

sort方法:

lambda函数:

示例代码2:

def count_widths(the_list):
 col_widths = [0]*len(the_list)
 for i in range(len(the_list)):
  for j in range(len(the_list[0])):
   if len(the_list[i][j]) > max_len:
    max_len = len(the_list[i][j])
  col_widths[i] = max_len
 return col_widths
 
 
def list_ljust(the_list):
 widths = count_widths(the_list)
 print(widths)
 for j in range(len(the_list[0])):
  for i in range(len(the_list)):
   print(the_list[i][j].ljust(widths[i]), end=' ')
  print('\r')
 
 
table_data = [['apples', 'oranges', 'cherries', 'banana'],
    ['Alice', 'Bob', 'Carol', 'David'],
    ['dogs', 'cats', 'moose', 'goose']]
list_ljust(table_data)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中用于检查英文字母大写的isupper()方法
May 19 Python
深入学习Python中的装饰器使用
Jun 20 Python
对python中dict和json的区别详解
Dec 18 Python
django中ORM模型常用的字段的使用方法
Mar 05 Python
使用PYTHON解析Wireshark的PCAP文件方法
Jul 23 Python
python实现的config文件读写功能示例
Sep 24 Python
python下载库的步骤方法
Oct 12 Python
jupyter notebook tensorflow打印device信息实例
Apr 20 Python
Python3实现个位数字和十位数字对调, 其乘积不变
May 03 Python
python里的单引号和双引号的有什么作用
Jun 17 Python
python IP地址转整数
Nov 20 Python
python 进阶学习之python装饰器小结
Sep 04 Python
Django+uni-app实现数据通信中的请求跨域的示例代码
Oct 12 #Python
python3.7将代码打包成exe程序并添加图标的方法
Oct 11 #Python
python 多进程并行编程 ProcessPoolExecutor的实现
Oct 11 #Python
Python 中list ,set,dict的大规模查找效率对比详解
Oct 11 #Python
Python 网络编程之UDP发送接收数据功能示例【基于socket套接字】
Oct 11 #Python
Python 进程操作之进程间通过队列共享数据,队列Queue简单示例
Oct 11 #Python
Python进程,多进程,获取进程id,给子进程传递参数操作示例
Oct 11 #Python
You might like
PHP中$_SERVER的详细参数与说明
2008/07/29 PHP
深入apache host的配置详解
2013/06/09 PHP
php多文件上传下载示例分享
2014/02/20 PHP
PHP入门教程之数学运算技巧总结
2016/09/11 PHP
PHP实现获取毫秒时间戳的方法【使用microtime()函数】
2019/03/01 PHP
JS 表单验证大全
2011/11/23 Javascript
基于mootools插件实现遮罩层新手引导
2012/05/24 Javascript
Jquery图形报表插件 jqplot简介及参数详解
2012/10/10 Javascript
枚举的实现求得1-1000所有出现1的数字并计算出现1的个数
2013/09/10 Javascript
如何防止回车(enter)键提交表单
2014/05/11 Javascript
JavaScript中length属性的使用方法
2015/06/05 Javascript
bootstrap与Jquery UI 按钮样式冲突的解决办法
2016/09/23 Javascript
JS 实现 ajax 异步浏览器兼容问题
2017/01/21 Javascript
js 输入框 正则表达式(菜鸟必看教程)
2017/02/19 Javascript
Express + Node.js实现登录拦截器的实例代码
2017/07/01 Javascript
vue.js todolist实现代码
2017/10/29 Javascript
Vue的click事件防抖和节流处理详解
2019/11/13 Javascript
了不起的11个JavaScript代码重构最佳实践小结
2021/01/11 Javascript
[04:55]完美世界副总裁蔡玮:DOTA2的自由、公平与信任
2013/12/18 DOTA
Python中正则表达式详解
2017/05/17 Python
使用Python处理BAM的方法
2018/09/28 Python
python-Web-flask-视图内容和模板知识点西宁街
2019/08/23 Python
python selenium操作cookie的实现
2020/03/18 Python
Python检测端口IP字符串是否合法
2020/06/05 Python
详解在Python中使用Torchmoji将文本转换为表情符号
2020/07/27 Python
python爬虫数据保存到mongoDB的实例方法
2020/07/28 Python
美体小铺瑞典官方网站:The Body Shop瑞典
2018/01/27 全球购物
Pandora德国官网:购买潘多拉手链、戒指、项链和耳环
2020/02/20 全球购物
必须要使用游标的SQL语句有那些
2012/05/07 面试题
护士自我鉴定范文
2013/10/06 职场文书
老总助理工作岗位职责
2014/02/06 职场文书
优秀教师申报材料
2014/12/16 职场文书
西岭雪山导游词
2015/02/06 职场文书
公司年会开场白
2015/06/01 职场文书
2015年酒店销售部工作总结
2015/07/24 职场文书
JavaScript中MutationObServer监听DOM元素详情
2021/11/27 Javascript