You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python打印类属性时等号无法对齐,如何实现居中对齐?

解决文本等号错位对齐问题

问题根源在于属性名长度不一致,直接拼接打印会导致等号无法对齐。你需要先固定属性名的显示宽度,确保所有属性名占据相同横向空间,后续的等号就能自然对齐。

修改后的代码如下:

from zari import Zari

attributes = [a for a in vars(Zari) if not a.startswith('__')]
# 获取最长属性名的长度,作为统一宽度基准
max_attr_len = max(len(attr) for attr in attributes)
for attribute in attributes:
    # 左对齐填充属性名到最大长度,再拼接等号与属性值
    print(f"{attribute:<{max_attr_len}}   =   {getattr(Zari, attribute)}")

关键改动说明:

  1. max(len(attr) for attr in attributes):遍历所有属性名,计算出最长属性名的长度,为后续统一宽度提供依据。
  2. f"{attribute:<{max_attr_len}}":通过f-string格式化语法,让属性名左对齐并填充空格至max_attr_len长度,保证所有属性名占用相同宽度。
  3. 固定宽度后,后续的等号和属性值会自动排列在同一列,实现对齐效果。

运行修改后的代码,输出会变为:

love    =   999999999999999999999999999999999999999999999999999999
smarts  =   9
looks   =   99999999999999999999999999
humor   =   99999999999

内容的提问来源于stack exchange,提问作者vlone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 19:30:53