Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.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-在setup.py build中包含来自项目根目录的Python脚本_Python_Build_Setup.py - Fatal编程技术网

Python-在setup.py build中包含来自项目根目录的Python脚本

Python-在setup.py build中包含来自项目根目录的Python脚本,python,build,setup.py,Python,Build,Setup.py,我已经看过了,但我无法理解哪一个是解决方案 我正试图编写一个setup.py文件来构建代码 以下是项目的目录结构: project | ├── setup.py | ├── MANIFEST.in | ├── package1 ├── __init__.py ├── data.py |__ file.yml └── util_folder ├── package2 ├── __init__.py ├── tool.py └── utils.

我已经看过了,但我无法理解哪一个是解决方案

我正试图编写一个setup.py文件来构建代码

以下是项目的目录结构:

project
|
├── setup.py
|
├── MANIFEST.in
|
├── package1
    ├── __init__.py
    ├── data.py
    |__ file.yml
    └── util_folder
├── package2
    ├── __init__.py
    ├── tool.py
    └── utils.py  
|___ script1.py
|___ script2.py
下面是setup.py的主要内容

setup(
     name = "MyProject",
     packages=['package1','package2'],
     include_package_data=True,
)
这里我的MANIFEST.in还包括package1下的util_文件夹和位于根文件夹的两个脚本

include *.py
recursive-include package1 *
但是跑完以后,

python setup.py install
在我的conda env中,script1.py和script2.py不会复制到目标,即

path/to/my/conda/env/lib/python3.7/site-packages/MyProject-1.0-py3.7.egg/
在该位置下,我只能看到package1和package2


出什么事了?

在我看来,你可能应该这样做:

导入设置工具
setuptools.setup(
# ...
py_模=[
“脚本1”,
“脚本2”,
],
)

注:在这种情况下,首选的命名是模块,而不是脚本。在我看来,脚本意味着直接调用和执行,模块意味着导入。

您可能需要
py_模块
脚本
,具体取决于意图。
script1
script2
应该是可导入的还是可执行的?两个脚本都应该导入,然后使用
py_模块
。此外,我不会调用这些文件脚本,而是调用模块。