Python 中哪些变量名是非法的?

本文介绍了Python中非法变量命名的规范,以及遵循合适命名约定的重要性。
On this page

Python 中哪些变量名是非法的?

摘录

了解 Python 中变量名的限制以及选择正确的变量名对于有效编程的重要性。探索有效和无效的变量名,Python 中的特定限制以及选择有意义和描述性名称的最佳实践。


Python对变量命名有特定的规则和约定。使用非法的命名可能会导致错误或使您的代码难以理解。在本文中,我们将讨论 Python 中的无效变量名的特点。

介绍

在 Python 中,变量保存值或对象的引用。您需要为它们分配唯一的名称,遵守 Python 的语法和样式规则。

正确的命名很重要,因为它使代码更易读。非法的名称会导致错误,或者会让后来阅读您的代码的人产生困惑。

语法限制

Python 对变量名有一些语法限制:

不能有空格或符号

变量名不能包含空格、引号或其他符号,如@和%。唯一允许的符号是下划线_。

用下划线分隔变量名中的单词,使用这种蛇形命名法是 Python 的标准。工具如String_to_Snake_Case可以将字符串格式化为这种格式。

长度限制

Python 变量名不能超过 253 个字符。超过此限制的过长名称可能会导致问题。

以字母或下划线开头

名称必须以下划线或字母开头。以数字或其他符号开头将会导致错误。

避免使用 Python 关键字

您不能将 Python 关键字和内置标识符用作变量名。这些单词在 Python 中是保留的:

1and       del       from      None      True
2as        elif      global    nonlocal  try
3assert    else      if        not       while
4break     except    import    or        with
5class     False     in        pass      yield
6continue  finally   is        raise
7def       for       lambda    return

工具如String_to_Lowercase可以帮助避免意外使用保留字作为名称。

样式约定

Python 还有一些标准的命名约定需要遵循:

使用蛇形命名法而不是驼峰命名法

变量名应该使用snake_case,如my_variable,而不是CamelCasePascalCase

需要时使用 String_to_CamelCase

然而,如果与使用CamelCase的其他语言进行接口,可以使用String_to_CamelCase等工具来转换名称。

可读性

即使名称遵循语法规则,如果它影响可读性,它仍然可能是非法的:

描述性名称

名称应该描述变量的值或目的。像datatemp这样的通用名称不明确。

完整单词优于缩写

避免使用不明确的简短缩写,如cntstmt_cnt。为了可读性,请写出完整的单词。

谨慎使用 String_to_Capital

您可以使用String_to_Capital将单词的首字母大写,以区分内部单词,例如maxStudentCount。但是请谨慎使用此功能。

非法名称示例

以下是 Python 中一些非法变量名称的示例:

不能包含空格

1my variable = 5 # Illegal, spaces invalid

不能以数字开头

11value = 10 # Illegal, cannot start with number

避免使用奇怪的符号

1my@value = 20 # Illegal, '@' not allowed

只有下划线可以作为名称中的符号。

名称太短或太长

1x = 1 # Too short, not descriptive
2
3toolongvariablenameover253chars = 10 # Illegal, exceeds length limit

不能使用 Python 保留字

1for = 5 # Illegal, 'for' is reserved word

名称混淆发生的时机

在 Python 中,当名称以两个下划线开头时,会发生名称混淆。这会将其更改为_classname__variable,以避免与子类名称冲突。

最好避免使用这种双下划线命名以防止混淆。

结论

以下是关于 Python 变量名称合法性的一些要点:

遵循 Python 的命名规则和约定可以避免非法的变量名称和难以阅读的代码。在为 Python 程序中的变量命名时,请记住这些指南。