在Python的PrettyTable中插入不同长度列表并展示目标代码输出
在Python的PrettyTable中插入不同长度列表的实现方法
没问题,我来给你展示怎么处理这个需求——当你有多个长度不一的列表要插入PrettyTable时,直接添加会因为长度不匹配报错,所以我们可以先把所有列表补齐到最长的长度,用空字符串或者其他占位符填充,这样就能正常生成表格了。
首先确保你已经安装了PrettyTable:
pip install prettytable
接下来是实现代码:
from prettytable import PrettyTable # 定义几个长度不同的列表 names = ["Alice", "Bob", "Charlie", "David"] ages = [25, 30, 35] cities = ["New York", "London"] # 找到最长列表的长度 max_length = max(len(names), len(ages), len(cities)) # 将所有列表补齐到最长长度,用空字符串填充空缺 names_padded = names + [""] * (max_length - len(names)) ages_padded = ages + [""] * (max_length - len(ages)) cities_padded = cities + [""] * (max_length - len(cities)) # 创建表格并设置字段名 table = PrettyTable() table.field_names = ["Name", "Age", "City"] # 插入数据行 for name, age, city in zip(names_padded, ages_padded, cities_padded): table.add_row([name, age, city]) # 打印表格 print(table)
运行这段代码后,你会得到如下输出:
+---------+-----+----------+ | Name | Age | City | +---------+-----+----------+ | Alice | 25 | New York | | Bob | 30 | London | | Charlie | 35 | | | David | | | +---------+-----+----------+
如果你不想用空字符串,也可以把填充值换成"N/A"或者None,比如把填充部分改成["N/A"] * ...,输出里的空缺就会显示成N/A啦。
内容的提问来源于stack exchange,提问作者Anchal Raheja
相关产品推荐
相关产品推荐

