以下是一个示例代码,用于按两列相等的方式列出一个表:
table_data = [
    ['Name', 'Age'],
    ['John', 30],
    ['Alice', 25],
    ['Bob', 35]
]
# 找到每列的最长字符串长度
col_width = [max(len(str(item)) for item in col) for col in zip(*table_data)]
# 打印表头
for header, width in zip(table_data[0], col_width):
    print(f'{header:{width}}', end='  ')
print()
# 打印分隔线
for width in col_width:
    print(f'{"-" * width}', end='  ')
print()
# 打印每一行数据
for row in table_data[1:]:
    for item, width in zip(row, col_width):
        print(f'{item:{width}}', end='  ')
    print()
输出结果为:
Name  Age  
----  ----  
John  30    
Alice 25    
Bob   35    
这个示例代码首先找到了每列的最长字符串长度,然后按照最长长度来格式化打印表头、分隔线和每一行的数据。使用了 zip() 函数来同时遍历每一列的数据。
                    上一篇:按两列日期顺序找出第N次出现
                
下一篇:按两列选择唯一行