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

如何以编程方式设置Python f-string的整数下划线分隔格式?

Python整数加下划线分隔符,避免多余空格的方法

不用费劲手动算位数或指定固定宽度,直接在f-string里用:_d格式符就能搞定——输出的数字会自动用上下划线分隔千位,还不会带多余空格。看实际例子:

num = 123456789
print(f"number is {num:_d}")
>>> number is 123_456_789

num = 1234
print(f"number is {num:_d}")
>>> number is 1_234

如果是某些特殊场景需要动态对齐宽度,可以先计算格式化后的总长度再指定:

def calc_formatted_width(n):
    raw_str = str(n)
    # 下划线数量为(数字位数-1)//3,比如4位数字对应1个下划线
    return len(raw_str) + (len(raw_str)-1) // 3

# 测试不同位数的数字
num_list = [1234, 123456789, 12, 9876543210]
for num in num_list:
    width = calc_formatted_width(num)
    print(f"number is {num:{width}_d}")
>>> number is 1_234
>>> number is 123_456_789
>>> number is 12
>>> number is 9_876_543_210

不过大多数场景下,第一种直接用{num:_d}的方法就足够简单高效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 11:32:12