嘗試執行字符串插值時,Python 3返回“無效語法”



python-3.x ubuntu-16.04 (1)

我最近一直在學習python 3,但我無法獲得任何涉及字符串插值(格式化)的示例。

In [1]: state = "Washington"

In [2]: state
Out[2]: 'Washington'

In [3]: my_message = f"I live in {state}"
File "<ipython-input-3-d004dd9e0255>", line 1
my_message = f"I live in {state}"
                                ^
SyntaxError: invalid syntax

我發現我的機器默認使用python 2,但是快速檢查發現:

Python 3.5.2 (default, Nov 17 2016, 17:05:23) 
Type "copyright", "credits" or "license" for more information.

IPython 5.2.2 -- An enhanced Interactive Python.

我在Ubuntu 16.04上:

python3 --version
Python 3.5.2

我只是在忽略基本語法嗎? 我已經在同學們的幾台計算機上運行了相同的命令,並且看起來執行得很好。


正如Josh Lee在評論部分中所建議的那樣,僅在Python 3.6中添加了這種字符串插值,請參見 docs.python.org/3/whatsnew/… (此處稱為“ PEP 498 :格式化的字符串文字”)。

但是,您似乎正在使用不支持該語法的Python 3.5.2。





string-interpolation