Tom*_*Tom 4 python pip setuptools pypi
我见过 PyPI 发行版名称以及带有数字的 Python 包名称。例如flake8就是一个示例,您还可以使用import flake8
.
根据 PyPI 和 PEP 标准,包名中可以有数字吗?我知道出于语法原因您不能以数字开头,但是从标准的角度来看,它可以放在中间还是结尾?
jwo*_*der 10
首先,注意 PyPI 项目名称和模块名称是完全独立的;没有什么能阻止你创建一个foo
安装模块的包,bar
这两个名称遵循不同的策略来确定什么是有效的。
模块名称受 Python 语法限制为有效标识符。 在 Python 2 中,这意味着它们必须包含一个 ASCII 字母或下划线,后跟零个或多个 ASCII 字母、数字和/或下划线。在 Python 3 中,添加了 Unicode,事情变得更加复杂,但我相信全 ASCII 模块名称仍然遵循相同的限制。
PyPI 上的项目名称(如PEP 508等中所指定)必须完全由 ASCII 字母、数字.
、-
、 和/或 组成_
,并且它们必须以字母或数字开头和结尾。还有一个正常化的政策,强制执行的情况下,不敏感和治疗奔跑.
,-
和_
作为平等的,所以foo-bar
和FOO.BAR
被认为是同一个项目。
此外,PEP 8 有一个关于包和模块名称的部分;它说:
模块应该有简短的全小写名称。如果可以提高可读性,可以在模块名称中使用下划线。Python 包也应该有简短的、全小写的名称,但不鼓励使用下划线。
当用 C 或 C++ 编写的扩展模块附带提供更高级别(例如,更面向对象)接口的 Python 模块时,C/C++ 模块具有前导下划线(例如
_socket
)。
所以,是的,您可以在项目名称和模块名称中使用数字,并且项目名称甚至可以以 1 开头!
归档时间: |
|
查看次数: |
1844 次 |
最近记录: |