文章目录

  • 重写错误发生的行
  • 导致错误的字符可能是不可见的
  • 另一个错误发生的例子
  • 确保我们的键盘设置为正确的语言
  • 错误也发生在数学运算中
  • 总结



当我们在代码中使用无效字符时,会出现 Python“

SyntaxError: invalid character”。

要解决错误,需要查看错误消息指向的行,重写该行并删除所有不可打印的 Unicode 字符。

下面是一个产生上述错误的示例。

# ⛔️ SyntaxError: invalid character '‘' (U+2018)
name = ‘James Doe‘

请注意

该示例不使用单引号。 相反,它使用一些其他不受支持的引号字符。


重写错误发生的行

解决错误的最佳方法是重写错误消息指向的行(特别是如果我们从某处复制粘贴它)。

# ✅ using regular quotes instead of apostrophes
name = 'James Doe'

现在我们使用单引号,因此错误已解决。


导致错误的字符可能是不可见的

导致错误的字符可能是不可见的。

下面是另一个例子。

# ⛔️ SyntaxError: invalid non-printable character U+200B
a_dict = {"jiyik": [{"id": 1}]

python 输入 dnf无效 python中无效字符_ico

在字典的左大括号之前有一个不可打印的 Unicode 字符。

但是,解决错误的最佳方法是查看错误消息并重写发生错误的行。


另一个错误发生的例子

这是另一个例子。

# ⛔️ SyntaxError: invalid character ',' (U+FF0C)
names = ['Alice','Jiyik']

python 输入 dnf无效 python中无效字符_Python_02

我们没有使用导致错误的常规逗号。

错误消息准确显示错误发生的位置。

一旦我重写代码以使用常规逗号,错误就解决了。

# ✅ 使用常规逗号
names = ['Alice','Bob']

解决错误的最佳方法是简单地重写代码,因为可能存在导致问题的不可打印(不可见)Unicode 字符。

特别是如果我们从某处复制粘贴代码并且您的 IDE 不注意删除这些字符,则很难找到它们。

我们可以尝试通过将代码粘贴到类似这样的工具中来检查代码中的不可打印 Unicode 字符。

但是,解决错误的最佳方法是查看错误消息指向的代码行,然后将其完全重写。


确保我们的键盘设置为正确的语言

确保我们的键盘设置为正确的语言。

使用来自不同语言的标点字符通常会导致错误。


错误也发生在数学运算中

这是发生上述错误的另一个示例。

int_1 = 100
int_2 = 50

# ⛔️ SyntaxError
result = int_1 — int_2

python 输入 dnf无效 python中无效字符_python 输入 dnf无效_03

我在导致错误的示例中使用了非标准减号。

要解决错误,请切换到正确的语言并重写减号。

int_1 = 100
int_2 = 50

# ✅ works
result = int_1 - int_2

print(result)  # 👉️ 50

总结

当我们在代码中使用无效字符时,会出现 Python“SyntaxError: invalid character”,例如 从某处复制粘贴的代码。

要解决错误,请查看错误消息指向的行,重写该行并删除所有不可打印的 unicode 字符。