Python3 f 字符串仅在 bash 中解释

Python3 f-strings only interpreted in bash

我目前正在学习 python 并注意到一个问题:如果我编写一个 .py 文件并使用 python3 myfile.py 命令行对其进行解释,那么下面的 f 字符串将不会显示, 但如果我直接在 python bash 中做同样的事情,它就可以正常工作。

这是从哪里来的? (我的 python 版本是 3.6.4(我也安装了 2.7 版本)并且我在 macOS 上工作)

a = "Hello"
b = 22
f"{a} I'm {b} years old"

这很正常,在交互式 Python 解释器中执行代码时,有一个 REPL - 读取、计算、打印 循环。

从 .py 文件执行时,没有 REPL。如果你想让字符串出现在标准输出上,你需要实际打印它:

print(f"{a} I'm {b} years old")