Python 正确的setup.py创建

Python 正确的setup.py创建,python,python-3.x,setup.py,Python,Python 3.x,Setup.py,因此,我有一个项目,其结构如下所示: project ├── src │ ├── api │ │ ├── __init__.py │ │ └── api.py │ ├── instance │ │ ├── __init__.py │ │ └── config.py │ ├── packages │ │ ├── __init__.py │ │ └── app.py ├── tests │ └── __init__.py ├── req

因此,我有一个项目,其结构如下所示:

project
├── src
│   ├── api
│   │   ├── __init__.py
│   │   └── api.py
│   ├── instance
│   │   ├── __init__.py
│   │   └── config.py
│   ├── packages
│   │   ├── __init__.py
│   │   └── app.py
├── tests
│   └── __init__.py
├── requirements.txt
├── README.md
├── .gitignore
└── setup.py
我正在尝试创建
setup.py
,以便从
包/app.py
调用
实例/config.py
。因此,我创建了以下
setup.py

from distutils.core import setup
from setuptools import setup, find_packages

setup(
    name='project',
    version='0.1dev0',
    author='Author name', 
    author_email='my_email',
    packages=['api', 'instance', 'packages'],
    long_description=open('README.md').read()
)
但我得到了以下错误:

...
      warnings.warn(tmpl.format(**locals()))
    package init file 'src\__init__.py' not found (or not a regular file)
    error: package directory 'api' does not exist
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
    from instance import config
ModuleNotFoundError: No module named 'instance'
因此,每当我试图从
packages/app.py
调用
实例/config.py
时,我都会遇到以下错误:

...
      warnings.warn(tmpl.format(**locals()))
    package init file 'src\__init__.py' not found (or not a regular file)
    error: package directory 'api' does not exist
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
    from instance import config
ModuleNotFoundError: No module named 'instance'
我需要对
setup.py
文件执行什么操作才能使其正常工作?项目的结构是否应该以某种方式改变


提前多谢

简而言之,您必须在项目目录中创建根包
project
。有关更多详细信息,请参阅。然后

from project.instance import config
src
重命名为
project
,并将导入的
\uuuu init\uuuu.py
放在那里

from . import api, instance, packages

“there”指的是
src
文件夹内?因为我按照您描述的那样做了,但仍然得到以下错误:
from。导入实例导入错误:尝试在没有已知父包的情况下进行相对导入
src
目录转换为python包。将
src
重命名为
project
并沿路径
project/project/\uuu init\uuuuuuuuuuuuupy
创建