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中的__builtins__内建对象
Jun 21 Python
对python3中的RE(正则表达式)-详细总结
Jul 23 Python
在Python3 numpy中mean和average的区别详解
Aug 24 Python
Win10+GPU版Pytorch1.1安装的安装步骤
Sep 27 Python
Python编写一个验证码图片数据标注GUI程序附源码
Dec 09 Python
Python读取YAML文件过程详解
Dec 30 Python
flask利用flask-wtf验证上传的文件的方法
Jan 17 Python
python调用API接口实现登陆短信验证
May 10 Python
Python中的全局变量如何理解
Jun 04 Python
Python类super()及私有属性原理解析
Jun 15 Python
python 密码学示例——理解哈希(Hash)算法
Sep 21 Python
LeetCode189轮转数组python示例
Aug 05 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获取本周,上周,本月,上月,本季度日期的代码
2009/08/05 PHP
《PHP编程最快明白》第六讲:Mysql数据库操作
2010/11/01 PHP
PHP版网站缓存加快打开速度的方法分享
2012/06/03 PHP
回帖脱衣服的图片实现代码
2014/02/15 PHP
php简单实现多维数组排序的方法
2016/09/30 PHP
解决PHP程序运行时:Fatal error: Maximum execution time of 30 seconds exceeded in的错误提示
2016/11/25 PHP
PHP面向对象程序设计(OOP)之方法重写(override)操作示例
2018/12/21 PHP
调试php程序的简单步骤
2019/10/04 PHP
thinkphp框架表单数组实现图片批量上传功能示例
2020/04/04 PHP
JS获取单击按钮单元格所在行的信息
2014/06/17 Javascript
JavaScript中Date.toSource()方法的使用教程
2015/06/12 Javascript
JavaScript实现打字效果的方法
2015/07/10 Javascript
JS仿淘宝实现的简单滑动门效果代码
2015/10/14 Javascript
JavaScript构造函数详解
2015/12/27 Javascript
判断是否存在子节点的实现代码
2016/05/18 Javascript
jQuery图片轮播插件——前端开发必看
2016/05/31 Javascript
AngularJS实现给动态生成的元素绑定事件的方法
2016/12/14 Javascript
javascript 秒表计时器实现代码
2017/03/09 Javascript
webpack学习教程之前端性能优化总结
2017/12/05 Javascript
Vue单页面应用保证F5强刷不清空数据的解决方案
2018/01/31 Javascript
JQuery Ajax执行跨域请求数据的解决方案
2018/12/10 jQuery
使用element-ui的el-menu导航选中后刷新页面保持当前选中状态
2019/07/19 Javascript
vue 中固定导航栏的实例代码
2019/11/01 Javascript
JavaScript创建表格的方法
2020/04/13 Javascript
[46:49]完美世界DOTA2联赛PWL S3 access vs Rebirth 第二场 12.19
2020/12/24 DOTA
python实现requests发送/上传多个文件的示例
2018/06/04 Python
matplotlib调整子图间距,调整整体空白的方法
2018/08/03 Python
详解python中*号的用法
2019/10/21 Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
2020/04/08 Python
canvas压缩图片以及卡片制作的方法示例
2018/12/04 HTML / CSS
师德师风演讲稿
2014/05/05 职场文书
2014法制宣传日活动总结
2014/07/09 职场文书
中学生打架检讨书
2014/10/13 职场文书
2014年建筑工程工作总结
2014/12/03 职场文书
创业计划书之书店
2019/09/10 职场文书
2019年国庆祝福语(70句)
2019/09/19 职场文书