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

Python字符串格式化问题:如何实现规整的列对齐输出?

修复Python列格式输出的问题

看起来你的代码有两个关键问题导致输出没对齐:语法结构错误,以及列宽设置不足以容纳长文本。让我一步步帮你解决:

问题分析

  • 语法结构错误:你把表头的print语句和for循环写在了同一行,这种写法在Python里是无效的(会触发语法错误),就算侥幸运行,表头也会在每次循环迭代时重复打印,完全不符合预期。
  • 列宽不足:你给Name列设置的宽度是<10,但示例里的ubuntu-s-1vcpu-1gb-nyc1-01这个名字长度远超10,长名字会直接溢出到RAM列的位置,彻底破坏对齐格式。

修正后的代码

先把表头打印和循环分开,再调整列宽到足够容纳最长的内容:

# 打印表头,设置足够宽的列以容纳长名字
print("{0:<30} {1:>10}".format("Name", "RAM"))
# 遍历每个droplet输出内容
for droplet in droplets:
    print("{0:<30} {1:>10}".format(droplet.name, droplet.memory))

如果你用的是Python 3.6及以上版本,更推荐用f-string写法,可读性更强:

print(f"{'Name':<30} {'RAM':>10}")
for droplet in droplets:
    print(f"{droplet.name:<30} {droplet.memory:>10}")

效果说明

调整后你会得到规整的对齐输出:

Name                          RAM
example-droplet                1024
ubuntu-s-1vcpu-1gb-nyc1-01     1024

你可以根据实际的droplet名字长度,灵活调整<30这个数值——只要保证它比最长的名字长一点,就能完美对齐啦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 06:58:29