Python 中 SyntaxError: f-string: expecting '}' 错误
当我们在使用单引号包裹的 f-string
中使用单引号时,会发生 Python “ SyntaxError: f-string: expecting '}' ” 。 要解决该错误,如果 f 字符串包含单引号,请确保将其包含在双引号中,反之亦然。
下面是一个产生上述错误的示例代码
employees = ['Alice', 'Bob', 'Carl']
# ⛔️ SyntaxError: f-string: expecting '}'
my_str = f'Employees list: \n{', '.join(employees)}'
print(my_str)
我们将 f
字符串用单引号括起来,但字符串本身在表达式中包含单引号。
要解决错误,请替换引号。 例如,如果 f
字符串包含单引号,则将其用双引号引起来。
employees = ['Alice', 'Bob', 'Carl']
my_str = f"Employees list: \n{', '.join(employees)}"
# Employees list:
# Alice, Bob, Carl
print(my_str)
相反,如果字符串包含双引号,则将其用单引号括起来。
employees = ['Alice', 'Bob', 'Carl']
my_str = f'Employees list: \n{", ".join(employees)}'
# Employees list:
# Alice, Bob, Carl
print(my_str)
如果我们的 f
字符串同时包含双引号和单引号,则可以使用三引号字符串。
name = 'Alice'
# 👇️ employee's name: Bob
print(f"""employee's name: {name.replace("Alice", "Bob")}""")
错误的另一个常见原因是忘记用大括号关闭表达式块。
employees = ['Alice', 'Bob', 'Carl']
# ⛔️ SyntaxError: f-string: expecting '}'
my_str = f'Employees list: \n{", ".join(employees)'
我们使用大括号打开了表达式块,但忘了关闭它。
表达式块需要使用大括号打开和关闭。
employees = ['Alice', 'Bob', 'Carl']
# ⛔️ SyntaxError: f-string: expecting '}'
my_str = f'Employees list: \n{", ".join(employees)}'
# Employees list:
# Alice, Bob, Carl
print(my_str)
如果我们尝试访问字典中的键或列表中的项目,请使用方括号。
emp = {'name': 'Alice'}
my_str = f"employee: {emp['name']}"
print(my_str) # 👉️ employee: Alice
格式化字符串文字f-strings
让我们通过在字符串前面加上 f
来在字符串中包含表达式。
my_str = 'is subscribed:'
my_bool = True
result = f'{my_str} {my_bool}'
print(result) # 👉️ is subscribed: True
确保将表达式包裹在花括号 - {expression} 中。
总结
当我们在使用单引号包裹的 f-string
中使用单引号时,会发生 Python “SyntaxError: f-string: expecting '}'”。 要解决该错误,如果 f
字符串包含单引号,请确保将其包含在双引号中,反之亦然。
相关文章
Python for 循环中的下一项
发布时间:2023/04/26 浏览次数:179 分类:Python
-
本文讨论了 Python 中的 for 循环以及如何通过使用 for 循环和示例来跳过列表的第一个元素。
Python While 循环用户输入
发布时间:2023/04/26 浏览次数:148 分类:Python
-
我们可以在 while 循环中使用 input() 函数来输入数据,直到在 Python 中满足某个条件。
在 Python 中将整数转换为罗马数字
发布时间:2023/04/26 浏览次数:87 分类:Python
-
本篇文章将介绍在 Python 中将整数转换为罗马数字。以下是一个 Python 程序的实现,它将给定的整数转换为其等效的罗马数字。
在 Python 中将罗马数字转换为整数
发布时间:2023/04/26 浏览次数:144 分类:Python
-
本文讨论如何在 Python 中将罗马数字转换为整数。 我们将使用 Python if 语句来执行此操作。 我们还将探讨在 Python 中将罗马数字更改为整数的更多方法。
在 Python 中读取 gzip 文件
发布时间:2023/04/26 浏览次数:70 分类:Python
-
本篇文章强调了压缩文件的重要性,并演示了如何在 Python 中使用 gzip 进行压缩和解压缩。
在 Python 中锁定文件
发布时间:2023/04/26 浏览次数:141 分类:Python
-
本文解释了为什么在 Python 中锁定文件很重要。 这讨论了当两个进程在没有锁的情况下与共享资源交互时会发生什么的示例,为什么在放置锁之前知道文件状态很重要,等等
在 Python 中将 PDF 转换为文本
发布时间:2023/04/26 浏览次数:196 分类:Python
-
在本教程中,我们将学习如何使用 Python 使用 PyPDF2、Aspose 和 PDFminer 将 PDF 文档转换为文本文件。
在 Python 中创建临时文件
发布时间:2023/04/26 浏览次数:53 分类:Python
-
本文讲解了tempfile库函数的四个子函数:TemporaryFile、NamedTemporaryFile、mkstemp、TemporaryDirectory。 每个部分都提供了适当的程序,以简化对概念的理解。