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

能否为Python f-string占位符用索引?如何用f-string替代format()实现指定功能?

关于Python f-string的两个问题解答

1. f-string占位符能否使用索引编号?

不行。f-string的设计逻辑是直接引用当前作用域中的变量名(比如f"{var}"),它不支持format()方法里那种位置索引(如{0})的写法。如果强行写f"{0}",Python会尝试查找名为0的变量,而非取第0个位置的参数,这通常会触发NameError。

2. 用f-string改写示例代码

原代码通过format()实现的功能,换成f-string的写法如下:

quantity = 3
itemno = 567
price = 49
myorder = f"I want {quantity} pieces of item number {itemno} for {price:.2f} dollars."
print(myorder)

运行后输出与原代码完全一致:

I want 3 pieces of item number 567 for 49.00 dollars.

核心改动点:

  • 把原占位符里的索引直接替换为对应的变量名
  • 格式说明符(如.2f)保持写法不变,直接跟在变量名后方

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 16:52:02