35

我的 Atom 阅读器在这里收到一条错误消息,提示第print.(f"message")一个错误消息:

File "/Users/permanentmajority/Desktop/Coding/learnpythonbook.py", line 75
    print(f"Let's talk about {my_name}.")
                                       ^
SyntaxError: invalid syntax
[Finished in 0.077s]

代码:

my_name = 'Zed A. Shaw'
my_age = 35 # not a lie
my_height = 74 # inches
my_weight = 180 #lbs
my_eyes = 'Blue'
my_teeth = 'White'
my_hair = 'Brown'

print(f"Let's talk about {my_name}.")
print(f"He's {my_height} inches tall.")
print(f"He's {my_weight} pounds heavy.")
print("Actually that's not too heavy.")
print(f"He's got {my_eyes} eyes and {my_hair} hair.")
print(f"His teeth are usually {my_teeth} depending on the coffee.")
4

7 回答 7

54

我想你有一个旧版本的python。尝试升级到最新版本的python。自 python 3.6 起,F 字符串文字已被添加到 python 中。你可以 在这里查看更多信息

于 2018-05-17T23:12:24.667 回答
13

这是一个python版本问题。

而不是使用

print(f"Let's talk about {my_name}."

利用

print("Let's talk about {}.".format(my_name))

在python2中。

您的代码适用于 python3.7。

在这里查看:

my_name= "raushan"
print(f"Let's talk about {my_name}.")

https://repl.it/languages/python3

于 2019-09-13T02:48:16.490 回答
5

Python Interpreter 会导致以下问题,因为您在执行程序时调用了错误的 python 版本,因为 f 字符串是 python 3 的一部分而不是 python 2。您可以这样做python3 filename.py,它应该可以工作。要解决此问题,请将 python 解释器从 2 更改为 3。 

于 2020-04-17T03:52:17.957 回答
3

在 python 3.6中添加了 f 字符串。在较旧的 python 版本中,f-string 将导致语法错误。

如果您不想(或不能)升级,请参阅如何在 Python 中将变量放入字符串中?寻找 f 弦的替代品。

于 2018-10-12T09:49:06.350 回答
0

我认为这是由于旧版本。我已经尝试过新版本并且执行良好。结果和预期的一样。

于 2018-07-12T10:44:00.710 回答
0

我相信您在这里遇到的问题取决于您使用 python 2 而没有意识到这一点。如果您没有在您的机器上将它设置为将 python 3 作为默认版本,您应该在终端中执行 python3 而不是标准的“python”命令。

我有这个问题,所以希望这个答案可以帮助那些寻找它的人。

于 2020-05-07T21:07:55.840 回答
0

我想他们输入了

python file.py

直接在运行python 2版本的Mac或linux中运行程序,因为OS默认包含python 2版本,所以我们需要输入

python3 file.py

这就是python2和python3运行命令问题的解决方法

于 2022-03-01T05:51:07.890 回答