为什么Python项目有以下结构?

问题描述 投票:0回答:1

我正在使用

setup.py
创建我自己的可安装 python 包。在查看不同的存储库时,我发现了以下结构 -

abc-def
|-abc_def
|-setup.py

这里,

setup.py
有功能
setup
,其内容如下 -

setup(
    name="abc_def"

我的问题是,父目录是否需要与子目录共享其名称,只需将

-
替换为
_
即可。特别是因为 python 似乎不接受
-
符号。例如,如果我在代码中的任何位置使用 import
abc-def
,我会收到以下错误 -

>>> import abc-def
  File "<stdin>", line 1
    import abc-def
              ^
SyntaxError: invalid syntax

python package setup.py
1个回答
0
投票
  1. python 项目通常具有这种结构,因为这是 setuptools

    推荐的结构
  2. 不强制要求保持相同的名称。 这里

虽然setuptools允许开发者创建非常复杂的映射 目录名和包名之间最好保留 简单并反映目录中所需的包层次结构 结构,保留相同的名称。

  1. 新项目建议使用
    pyproject.toml
    代替
    setup.py
© www.soinside.com 2019 - 2024. All rights reserved.