我可以用根目录创建一个包吗?

时间:2019-08-15 21:41:19

标签: python

假设项目目录结构如下:

test-package:
  __init__.py
  hello.py
  setup.py

setup.py是:

from setuptools import setup, find_packages
setup(
    name="test-package",

    packages=find_packages(),
    version="1.0",

    include_package_data=True,
)

'test-package'是项目的根目录。然后做:

pip install .

在site-packages目录中,只有:

test_package-1.0-py3.7.egg-info/

我看不到源文件“ hello.py”。

我知道大多数python项目的软件包名称都不是项目的根目录。但是如果我想创建一个根目录名作为这样的包名,那有可能吗?

1 个答案:

答案 0 :(得分:0)

您需要为test-package创建一个父文件夹,并将setup.py放入其中,同时在包名称中使用下划线。从技术上讲,PEP8建议使用所有小写字母,但不要在软件包名称下使用下划线,但这不是严格的建议。

my-project:
  setup.py
  test_package:
    __init__.py
    hello.py

这有一个有用的教程:https://packaging.python.org/tutorials/packaging-projects/

编辑:程序包名称应使用下划线而不是破折号