命名python模块有哪些要求?

Pan*_*nda 3 python module naming-conventions

我一直在学习Python的艰难之路作为一种复习.而不是命名每个例子ex#.py(其中#是练习的编号),然而,我只是称他们为#.py.这个工作正常,直到我进入练习25,这需要您通过解释器导入刚刚创建的模块.当我尝试这个时,会发生以下情况:

>>> import 25
  File "<stdin>", line 1
    import 25
            ^

SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

我尝试将文件重命名为ex25.py,然后按预期工作(>>> import ex25).我想知道的是python模块的命名要求是什么?我在这里查看了官方文档,但没有看到它提到任何限制.

编辑:iCodez,Pavel和BrenBarn的所有三个答案都提供了很好的资源并帮助回答了这个问题的不同方面.我最终选择iCodez的答案是正确的,因为这是第一个答案.

iCo*_*dez 5

使用该import语句导入的模块必须遵循为变量名称(标识符)设置的相同命名规则.具体来说,它们必须以字母1或下划线开头,然后完全由字母,数字2和/或下划线组成.

您可能还对PEP 8(Python代码的官方样式指南)对模块名称的评价感兴趣:

模块应具有简短的全小写名称.如果提高可读性,则可以在模块名称中使用下划线.Python包也应该有简短的全小写名称,但不鼓励使用下划线.


1个 字母是ASCII字符A-Za-z.
2 位是ASCII字符0-9.