如何用制表符 、换行符 等空白字符格式化Python函数输出?
Python函数返回结果格式化方案
- 别纠结转义空白字符了,这类字符(比如
\t)的显示宽度不固定,很容易出现对齐混乱,推荐用固定宽度字符串格式化来实现整齐的输出,这是最靠谱的方式。 - 用f-string(Python3.6+支持)直接控制每段内容的对齐方式和宽度:
输出会自动对齐每一列,# 示例:格式化返回的多字段数据 def user_info(): return [("张三", 28, "后端开发"), ("李四", 32, "产品经理"), ("王五", 24, "UI设计")] # 左对齐、右对齐配合固定宽度,实现列对齐 for name, age, job in user_info(): print(f"{name:<8} {age:>4}岁 {job:<10}"):<8表示左对齐且占8个字符宽度,:>4表示右对齐占4个字符宽度,根据你的实际数据调整宽度即可。 - 如果是处理长文本换行和缩进,用
textwrap模块更省心:import textwrap def long_result(): return "你需要格式化的长文本内容,可能包含多个段落或者很长的句子,用这个方法可以指定每行宽度,自动换行并保持缩进一致。" # 设置每行宽度30,首行和后续行都缩进2个空格 formatted = textwrap.fill(long_result(), width=30, initial_indent=" ", subsequent_indent=" ") print(formatted) - 要是需要更复杂的表格样式,也可以用
str.format()实现,和f-string逻辑类似,只是写法不同:print("{:<8} {:>4} {:<10}".format("姓名", "年龄", "职位")) for name, age, job in user_info(): print("{:<8} {:>4} {:<10}".format(name, age, job))
内容的提问来源于stack exchange,提问作者michaelJ
相关产品推荐
相关产品推荐

