最简单的方法是使用字符串格式化或tabulate库。1. 用str.ljust()等手动对齐列;2. 安装并使用tabulate库输出美观表格,支持grid等样式;3. 用pandas DataFrame打印结构化数据,适合数据分析。小项目可选手动方式,推荐tabulate实现清晰终端表格。

要用Python脚本实现表格打印,最简单的方式是使用内置的字符串格式化或第三方库如 tabulate 来美化输出。下面介绍几种常用方法。
使用字符串格式化手动对齐
通过 str.ljust()、str.rjust() 或 str.center() 可以控制每列宽度,实现基本对齐。
示例:
headers = ['Name', 'Age', 'City']
rows = [
['Alice', 24, 'Beijing'],
['Bob', 30, 'Shanghai'],
['Charlie', 28, 'Guangzhou']
]
打印表头
print('| ' + ' | '.join(h.ljust(10) for h in headers) + ' |')
立即学习“Python免费学习笔记(深入)”;
打印分隔线
print('|' + '-' (len(headers) 13 + 1) + '|')
打印数据行
for row in rows:
print('| ' + ' | '.join(str(x).ljust(10) for x in row) + ' |')
使用 tabulate 库(推荐)
安装 tabulate:
pip install tabulate
然后用它轻松打印美观表格:
from tabulate import tabulateheaders = ['Name', 'Age', 'City'] rows = [ ['Alice', 24, 'Beijing'], ['Bob', 30, 'Shanghai'], ['Charlie', 28, 'Guangzhou'] ]
print(tabulate(rows, headers=headers, tablefmt='grid')))
支持多种样式,比如 grid、pipe、simple 等,适合终端展示。
使用 pandas 打印 DataFrame 表格
如果你的数据已经是结构化形式,可用 pandas 直接显示。
import pandas as pddf = pd.DataFrame([ {'Name': 'Alice', 'Age': 24, 'City': 'Beijing'}, {'Name': 'Bob', 'Age': 30, 'City': 'Shanghai'}, {'Name': 'Charlie', 'Age': 28, 'City': 'Guangzhou'} ])
print(df)
pandas 默认输出简洁清晰,适合数据分析场景。
基本上就这些。小项目用手动格式化,追求美观上 tabulate,处理数据多就用 pandas。不复杂但容易忽略细节的是列宽和中文对齐问题,注意字体等宽即可。











