Python编程快速上手实践项目题目,欢迎指证与优化!

编写一个名为 printTable()的函数, 它接受字符串的列表的列表,将它显示在组

织良好的表格中, 每列右对齐。假定所有内层列表都包含同样数目的字符串。例如,

该值可能看起来像这样:

tableData = [['apples', 'oranges', 'cherries', 'banana'],

['Alice', 'Bob', 'Carol', 'David'],

['dogs', 'cats', 'moose', 'goose']]

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

思路一:

1.计算列表中(包括内部列表)最长元素的长度;

2.以最长元素的长度值作为全局右对齐的值打印列表

代码:

import copy

tableData = [['apples', 'oranges', 'cherries', 'banana'],

['Alice', 'Bob1111111111111', 'Carol', 'David'],

['dogs', 'cats', 'moose', 'goose']]

def count_width(the_list):

#定义函数:计算列表字符串最长值

new_list=copy.deepcopy(the_list)

#复制列表保存到独立的新列表

colWidths = [0] * len(new_list)

#创建一个列表,数目等同于tableData

i=0

while i < len(new_list):

new_list[i].sort(key = lambda i:len(i),reverse = True)

'''重新按照字符长度逆序(从大到小),lamba表示匿名函数,key = lambda i:len(i)代表

以元素i的len()值作为比较

'''

colWidths[i]=new_list[i][0]

# print (colWidths[i])

i=i+1

#将tableData[i]降序排序,取最大值(第一个),得到一个每个内层列表中最长的字符串的列表

colWidths.sort(key = lambda i:len(i),reverse = True)

width=len(colWidths[0])

#将colWidths降序排序,取最大值(第一个)并计算其字符宽度

#print (width)

#print (the_list)

#print (new_list)

return width

def list_rjust(the_list,width):

for j in range (len(the_list[0])):

for i in range (len(the_list)):

print(the_list[i][j].rjust(width),end=" ")

print("\r")

list_rjust(tableData,count_width(tableData))

思路二:

1.计算列表(数组,没有嵌套数组)最长元素的值;

2.按照列表最长元素的值打印列表(每列的最长值可能不同)

代码:

tableDate=[['apples', 'oranges', 'cherries', 'banana'],

['Alice', 'Bob', 'Carol', 'David'],

['dogs', 'cats', 'moose', 'goose']]

def findmaxlen(Dates):

'''

计算一个数组中最长元素的长度

'''

maxlen=0

for i in range(len(Dates)):

if len(Dates[i])>maxlen:

maxlen=len(Dates[i])

return maxlen

#print(findmaxlen(tableDate[0]))

def printTable(the_list):

for j in range (len(the_list[0])):#打印内部数组的第j个

for i in range (len(the_list)):#打印数组的第i个

print(the_list[i][j].rjust(findmaxlen(the_list[i])),end=' ')

#打印第i个数组的第j个内部数组时,按照第i个数组中的元素最长值右对齐

print("\r")

printTable(tableDate)

python打印表格_Python 表格打印相关推荐

  1. python花式编码_Python——花式打印对象的若干种方法

    今天是Python专题的第10篇文章,我们来聊聊Python当中的类. 打印实例 我们先从类和对象当中最简单的打印输出开始讲起,打印一个实例是一个非常不起眼的应用,但是在实际的编程当中却非常重要.原因 ...

  2. python语言打印菱形_Python 实现打印单词的菱形字符图案

    Python 实现打印单词的菱形字符图案 我就废话不多说了,还是直接看代码吧! a = [1, 2, 3, 4, 5, 6, 7, 6, 5, 4, 3, 2, 1] b = [' ' * 2 * ( ...

  3. python可打印字符_python不可打印字符有哪些

    python不可打印字符有哪些 发布时间:2020-09-24 15:46:57 来源:亿速云 阅读:65 作者:Leah 今天就跟大家聊聊有关python不可打印字符有哪些,可能很多人都不太了解,为 ...

  4. python中怎么打印出表格_Python 表格打印

    思路一: 1.计算列表中(包括内部列表)最长元素的长度: 2.以最长元素的长度值作为全局右对齐的值打印列表 代码: import copy tableData = [['apples', 'orang ...

  5. python如何打印文字_python怎么打印字符

    print() 方法用于打印输出,最常见的一个函数. 在 Python3.3 版增加了 flush 关键字参数. print 在 Python3.x 是一个函数,但在 Python2.x 版本不是一个 ...

  6. python花式输出_Python——花式打印对象的若干种方法

    今天是Python专题的第10篇文章,咱们来聊聊Python当中的类.编程 打印实例 咱们先从类和对象当中最简单的打印输出开始讲起,打印一个实例是一个很是不起眼的应用,可是在实际的编程当中却很是重要. ...

  7. python 打印模块_Python 日志打印模块

    1 logging模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设置不同 ...

  8. python 程序停止打印日志_Python日志打印

    简单示例 import sys import ctypes import logging import logging.handlers reload(sys) sys.setdefaultencod ...

  9. python代码异常对照表格_Python表格py错误(pandas错误?)

    已选取JAVA_TOOL_选项:-Djava.security.properties=c:\ Windows\Sun\JAVA\Deployment\sam.security 回溯(最近一次呼叫时间) ...

最新文章

  1. js init : function ()
  2. 怎么不让html网页自动跳转,javascript怎么禁止跳转页面?
  3. 在Android中使用AspectJ进行切面编程的简易步骤
  4. 软件架构设计 温昱著 - 读书笔记
  5. C语言宏与单井号(#)和双井号(##)
  6. ubuntu上的wordpress安装
  7. 求1+2+......+100的和
  8. java定长池,java线程池源码学习
  9. java sort排序函数
  10. 叫号系统服务器,排队叫号系统设置方法
  11. 基于专利多属性融合的技术主题划分方法研究
  12. 将NV21图像某一区域变黑色
  13. 春节或将成为短信唯一的救命稻草?
  14. iOS及Mac开源项目和学习资料
  15. 计算机科学引论2答案,计算机科学引论答案.doc
  16. 不忘初心,方得始终——NOIP2016前的感悟
  17. SpringBoot整合Swagger2教程
  18. 微电子系统封装期末总结—国科大集成电路学院
  19. 公众号+搭建知识付费网课分销平台聚合型玩法解析
  20. 常用导线截面积和载流量数据总结

热门文章

  1. 一文看懂KMP(看毛片)算法
  2. InputStream 转成 MultipartFile
  3. 使用google身份验证器实现动态口令验证
  4. 只有程序员才懂的幽默(转)
  5. Unity版本捕鱼游戏设计与实现
  6. 《i know you are there》——我知道你在那里【七禾原创】
  7. 001-ESP32学习开发(arduino)-开发环境搭建
  8. 荣耀电视鸿蒙系统的,鸿蒙系统荣耀智慧屏正式亮相 “电视的未来”来了
  9. LeetCode编程练习 - Count Primes学习心得
  10. 线性表的顺序存储结构和操作实现