我刚刚完成了一个模块,想要打包它.我已经阅读了包含python应用程序的文档和这个问题,但是当我没有要导入的包但是要启动的脚本时,我不确定如何继续.
该项目看起来像这样:
Project/
|-- README
|-- requirement.txt
|-- driver.py
|-- run.py
|-- module_1
| |-- __init__.py
| |-- class_1.py
| |-- class_2.py
|-- module 2
|-- |-- __init__.py
|-- |-- class_1.py
|-- |-- class_2.py
Run Code Online (Sandbox Code Playgroud)
为了启动我做的工具:
python run.py arg1 --option arg2
Run Code Online (Sandbox Code Playgroud)
driver.py导入所有其他模块并定义一个Driver类和一些函数.run.py导入driver.py,解析参数,设置记录器并一个接一个地调用函数来完成工作.
我不确定配置setup.py,我还需要一个全局__init__.py的根?根据我的理解,我只能用它的参数import Project来启动脚本run.py.
从其他读数,也许我应该试着告诉那Driver.py是包并使用entry_points选项setup().但我不明白如何正确地完成所有这些工作.
谢谢你的热心帮助!
我在这里很困惑。我有一个受 CPU 限制的应用程序,因此我开始使用多进程实现并行化来克服 GIL 问题。
我第一次尝试使用multiprocessing,futures但遇到了酸洗问题,所以我去pathos使用哪个dill作为pickle替代品。
一切正常,但我想知道我是否使用的是最“面向未来”的解决方案。我也见过dask,但我不知道它是否会在酸洗类问题的情况下起作用(请参阅Python:(Pathos)多处理与类方法)。从文档来看,它使用了futures所以我假设它不会完成这项工作。
其次,我希望能够一次使用两台服务器,并且我已经看到这可以通过pathos(also dask) 实现,但我不明白它到底是如何工作的。这个答案/sf/answers/1886378091/仅显示如何使用一台服务器。使用 2 个或更多怎么样?我找不到任何关于此的示例,尽管包信息中描述的似乎是可能的。
感谢您的帮助!
安装带有其他功能的软件包时,是否有一种方法可以自动处理依赖关系链接,而无需--process-dependency-links像通常那样调用install_requires?
pip install -e .[extra] --process-dependency-links
Run Code Online (Sandbox Code Playgroud)
我需要这个,因为依赖项仅位于私有git repo上。
是否可以使用安装其他功能python setup.py install?
是否--process-dependency-links已弃用仍要考虑?我不确定这里的状态。
我正在研究一个符号雅各J比大小的矩阵QxQ.该矩阵的每个系数包含Q符号,从f[0]到f[Q-1].我想要做的是替代每个符号的每一个系数J与已知值g[0]来g[Q-1](这是没有更多的符号).我发现最快的方法如下:
for k in range(Q):
J = J.subs(f[k], g[k])
Run Code Online (Sandbox Code Playgroud)
但是,我觉得这个"基本"操作很长!例如,使用此MCVE:
import sympy
import numpy as np
import time
Q = 17
f0, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12, f13, f14, f15, f16 = \
sympy.symbols("f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16")
f = [f0, f1, f2, f3, f4, …Run Code Online (Sandbox Code Playgroud) 我们使用 Sphinx 构建 Python 文档,然后存储工件。然后,GitHub 直接在 CI 中显示一个链接以打开index.html.
但是,在构建 Sphinx 文档时,会创建数千个文件,这会减慢工件的上传速度。为了减少上传时间,我可以从doc上传压缩文件夹。那么,如何保存未压缩的文件夹呢?这是必需的,因为我们有一个文件artifact_path需要index.html. 或者还有其他方法可以解决这个问题吗?
- store_artifacts:
path: folder.tar # untar after?
Run Code Online (Sandbox Code Playgroud)
免责声明:这是针对 SciPy 的,我是一名核心开发人员。这将非常有帮助,因为它花费了该管道大约 30% 的构建时间。