在python中如何将变量放入字符串中

在python中如何将变量放入字符串中,python,Python,我试着跟着一本书走,书上说要输入下面的代码,但它不起作用 书是:马特斯,埃里克。Python速成班,第二版(第21页)。没有淀粉压榨机。Kindle版 first_name = "ada" last_name = "lovelace" full_name = f"{first_name} {last_name}" print(full_name) 错误: line 3 full_name = f"{first_name} {last_name}"

我试着跟着一本书走,书上说要输入下面的代码,但它不起作用

书是:马特斯,埃里克。Python速成班,第二版(第21页)。没有淀粉压榨机。Kindle版

first_name = "ada"
last_name = "lovelace"
full_name = f"{first_name} {last_name}"
print(full_name)
错误:

 line 3
    full_name = f"{first_name} {last_name}"
                                          ^
SyntaxError: invalid syntax

根据terminal,它在Python 3.7.3中,因此这不是3.7.3中的问题,您也可以这样使用.format():

first_name = "ada"
last_name = "lovelace"
full_name = "{} {}".format(first_name, last_name)
print(full_name)

我希望这会有所帮助

还有其他几种方法可以实现相同的结果,但是您给出的代码在python 3.6及更高版本上是有效的。很可能您正在运行旧版本,即使终端没有这样说。您可以可靠地使用

import sys
print (sys.version)
还有其他方法可以得到同样的结果,我将在下面列出一些

first_name = "john"
last_name  = "doe"

full_name_m1 = first_name + " " + last_name
full_name_m2 = first_name + " %s" % last_name
full_name_m3 = "%s %d" % (first_name, last_name)

full_name_m4 = " "
for i in first_name:
    full_name_m4 += first_name[i]
full_name_m4 += " "
for i in last_name:
    full_name_m4 += last_name[I]

很抱歉格式化或打字错误,我在移动电话上。最后一个例子显然有些过火,但在学习python时,它们可能会很有趣

这种语法(f-strings)仅在Python 3.6之后才存在。您必须运行较旧的版本。您的代码看起来不错,并且在我的计算机上使用Python 3.6.3运行。您应该仔细检查运行的是哪个版本的Python。请参阅以了解如何执行此操作。请尝试导入系统;打印(sys.version)以检查您真正运行的版本。不要相信终端检查
sys.version
。您的代码在Python 3.6+下运行良好。请将建议的代码添加为脚本的第一行,然后再次运行它-并用错误注释掉该行…不,您不需要使用
格式
。问题中OP给出的代码是否完全有效,并且在任何版本的Python>=3.6上运行良好。感谢您指出这一点。我把我的答案改为“或者”,因为这是另一种获得OP需要的答案的方式