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多线程编程简单介绍
Apr 13 Python
Python中的super()方法使用简介
Aug 14 Python
Python实现翻转数组功能示例
Jan 12 Python
Python反转序列的方法实例分析
Mar 21 Python
用python标准库difflib比较两份文件的异同详解
Nov 16 Python
Python3.5 Pandas模块之DataFrame用法实例分析
Apr 23 Python
Python3.5模块的定义、导入、优化操作图文详解
Apr 27 Python
python自动发微信监控报警
Sep 06 Python
python第三方库学习笔记
Feb 07 Python
python如何正确使用yield
May 21 Python
python通过新建环境安装tfx的问题
May 20 Python
利用Python实时获取steam特惠游戏数据
Jun 25 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
Apache 配置详解(最好的APACHE配置教程)
2010/07/04 PHP
PHP脚本监控Nginx 502错误并自动重启php-fpm
2015/05/13 PHP
PHP实现的蚂蚁爬杆路径算法代码
2015/12/03 PHP
Aster vs Newbee BO5 第一场2.19
2021/03/10 DOTA
dess中一个简单的多路委托的实现
2010/07/20 Javascript
js取得url地址参数实例
2013/02/22 Javascript
js判断浏览器类型为ie6时不执行
2014/06/15 Javascript
jQuery制作仿Mac Lion OS滚动条效果
2015/02/10 Javascript
jQuery中hover与mouseover和mouseout的区别分析
2015/12/24 Javascript
不间断循环滚动效果的实例代码(必看篇)
2016/10/08 Javascript
AngularJS入门教程之表单校验用法示例
2016/11/02 Javascript
JS实现“隐藏与显示”功能(多种方法)
2016/11/24 Javascript
详解vuejs几种不同组件(页面)间传值的方式
2017/06/01 Javascript
通过js动态创建标签,并设置属性方法
2018/02/24 Javascript
详解从买域名到使用pm2部署node.js项目全过程
2018/03/07 Javascript
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
2018/09/04 Javascript
Node.js 多进程处理CPU密集任务的实现
2019/05/26 Javascript
微信小程序 wx.getUserInfo引导用户授权问题实例分析
2020/03/09 Javascript
JS sort排序详细使用方法示例解析
2020/09/27 Javascript
[03:55]DOTA2完美大师赛选手传记——LFY.MONET
2017/11/18 DOTA
Python数据结构与算法之图的最短路径(Dijkstra算法)完整实例
2017/12/12 Python
Python enumerate函数功能与用法示例
2019/03/01 Python
python适合做数据挖掘吗
2020/06/16 Python
澳大利亚最受欢迎的美发和美容在线商店:Catwalk
2018/12/12 全球购物
介绍一下Java中的Class类
2015/04/10 面试题
static函数与普通函数有什么区别
2015/12/25 面试题
竞选劳动委员演讲稿
2014/04/28 职场文书
环境科学专业教师求职信
2014/07/12 职场文书
交通事故赔偿协议书怎么写
2014/10/04 职场文书
2014年销售员工作总结
2014/12/01 职场文书
社区工作者个人总结
2015/02/28 职场文书
交通事故起诉书
2015/05/19 职场文书
2015年统计员个人工作总结
2015/07/23 职场文书
婚礼家长致辞
2015/07/27 职场文书
简单了解 MySQL 中相关的锁
2021/05/25 MySQL
Mysql 如何实现多张无关联表查询数据并分页
2021/06/05 MySQL