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操作Oracle数据库的简单方法和封装类实例
May 07 Python
Python Dataframe 指定多列去重、求差集的方法
Jul 10 Python
Flask中endpoint的理解(小结)
Dec 11 Python
在 Pycharm 安装使用black的方法详解
Apr 02 Python
django 实现简单的插入视频
Apr 07 Python
深入浅析python 中的self和cls的区别
Jun 20 Python
Python定义一个Actor任务
Jul 29 Python
详解python3 GUI刷屏器(附源码)
Feb 18 Python
用python自动生成日历
Apr 24 Python
python实现腾讯滑块验证码识别
Apr 27 Python
Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案
Apr 20 Python
Python使用Opencv打开笔记本电脑摄像头报错解问题及解决
Jun 21 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
制作美丽的拉花
2021/03/03 冲泡冲煮
PHP下操作Linux消息队列完成进程间通信的方法
2010/07/24 PHP
php将服务端的文件读出来显示在web页面实例
2016/10/31 PHP
PHP实现的装箱算法示例
2018/06/23 PHP
使用Apache的rewrite
2021/03/09 Servers
让广告代码不再影响你的网页加载速度
2006/07/07 Javascript
jquery.validate使用攻略 第二部
2010/07/01 Javascript
JS跨域代码片段
2012/08/30 Javascript
jQuery使用技巧简单汇总
2013/04/18 Javascript
浮动的div自适应居中显示的js代码
2013/12/23 Javascript
点击弹出层效果&amp;弹出窗口后网页背景变暗效果的实现代码
2014/02/10 Javascript
node.js入门教程迷你书、node.js入门web应用开发完全示例
2014/04/06 Javascript
js实现正方形颜色从下往上升的效果
2014/08/04 Javascript
浅谈js中的引用和复制(传值和传址)
2016/09/18 Javascript
微信小程序使用第三方库Underscore.js步骤详解
2016/09/27 Javascript
浅析如何利用angular结合translate为项目实现国际化
2016/12/08 Javascript
基于JavaScript实现自动更新倒计时效果
2016/12/19 Javascript
react-native-tab-navigator组件的基本使用示例代码
2017/09/07 Javascript
详解IWinter 一个路由转控制器的 Nodejs 库
2017/11/15 NodeJs
用Vue写一个分页器的示例代码
2018/04/22 Javascript
vue的toast弹窗组件实例详解
2018/05/14 Javascript
element el-input directive数字进行控制
2018/10/11 Javascript
如何基于js判断浏览器版本
2020/02/20 Javascript
Python编写的com组件发生R6034错误的原因与解决办法
2013/04/01 Python
python修改操作系统时间的方法
2015/05/18 Python
解决nohup重定向python输出到文件不成功的问题
2018/05/11 Python
Python pygorithm模块用法示例【常见算法测试】
2018/08/16 Python
神经网络相关之基础概念的讲解
2018/12/29 Python
Python 解决火狐浏览器不弹出下载框直接下载的问题
2020/03/09 Python
pytorch  网络参数 weight bias 初始化详解
2020/06/24 Python
Html5新特性用canvas标签画多条直线附效果截图
2014/06/30 HTML / CSS
linux系统都有哪些运行级别
2012/04/15 面试题
EJB发布WEB服务一般步骤
2012/10/31 面试题
人力资源职位说明书
2014/07/29 职场文书
综治维稳工作汇报
2014/10/27 职场文书
js作用域及作用域链工作引擎
2022/07/07 Javascript