Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Can';t通过setup.py正确安装我的脚本_Python_Python 3.x - Fatal编程技术网

Python Can';t通过setup.py正确安装我的脚本

Python Can';t通过setup.py正确安装我的脚本,python,python-3.x,Python,Python 3.x,我想通过pip安装我的脚本,我编写了一个setup.py文件,但安装工作不正常 让我们假设以下场景。我有一个项目叫做hello\u world\u项目。项目中有两个文件夹。第一个文件夹称为hello\u world\u project,第二个文件夹是包含unittests的测试文件夹 在hello\u world\u项目文件夹中有子目录。结构如下所示: from setuptools import setup, find_packages setup( (...) packag

我想通过pip安装我的脚本,我编写了一个setup.py文件,但安装工作不正常

让我们假设以下场景。我有一个项目叫做hello\u world\u项目。项目中有两个文件夹。第一个文件夹称为hello\u world\u project,第二个文件夹是包含unittests的测试文件夹

在hello\u world\u项目文件夹中有子目录。结构如下所示:

from setuptools import setup, find_packages

setup(
    (...)
    packages=find_packages("hello_world_project"),
    package_dir={"": "hello_world_project"},
    entry_points={
        'console_scripts': [
            'hello_world = hello_world_project.main:main'
        ]
    },
    (...)
)
  • 你好\u世界\u项目/文件夹\u 1
  • 你好,世界项目/文件夹2
  • 你好,世界项目/图片
文件夹_1和文件夹_2包含一个_init__uuuuuuuy.py文件,而图像文件夹包含简单的PNG

我的setup.py如下所示:

from setuptools import setup, find_packages

setup(
    (...)
    packages=find_packages("hello_world_project"),
    package_dir={"": "hello_world_project"},
    entry_points={
        'console_scripts': [
            'hello_world = hello_world_project.main:main'
        ]
    },
    (...)
)
当我通过pip安装安装软件包时。软件包在我的venv中被拆分。 我的venv的lib文件夹没有hello\u world\u项目文件夹。相反,在我的venv lib文件夹中有一个文件夹_1、文件夹_2和图像文件夹

我尝试了不同的方法,但是当我将setup.py更改为I时。E这:

    from setuptools import setup, find_packages

    setup(
        (...)
        packages=find_packages("hello_world_project"),
        package_dir={"hello_world_project": "hello_world_project"},
        entry_points={
            'console_scripts': [
                'hello_world = hello_world_project.main:main'
            ]
        },
        (...)
    )

我收到以下错误消息:错误:包目录“folder_1”不存在

我找到了解决方案。我更改了设置并包含了文件夹

from setuptools import setup, find_packages

setup(
    (...)
    packages=["hello_world_project", "hello_world_project.folder_1", "hello_world_project.folder_2"],
    entry_points={
        'console_scripts': [
            'hello_world = hello_world_project.main:main'
        ]
    },
    (...)
)