我正在管理一个相当大的python代码库(超过2000行),我希望这些代码可以作为单个可运行的python脚本使用。所以我正在寻找一种方法或工具来合并一个开发文件夹,这个文件夹由不同的python文件组成,形成一个运行的脚本。在
我要搜索的东西/方法应该将代码拆分成不同的文件,可能是使用包含导入的__init___.py
开始文件,并将其合并到一个单独的大脚本中。在
很像预处理器。最好是一个接近本机的方式,如果我可以从dev文件夹运行的话。在
我已经检查了pypp和pypreprocessor,但他们似乎没有抓住重点。在
像是__import__()
的奇怪用法,或者是一堆{
更新 我想要的是将代码完全保存为一个包,然后能够将其“编译”成单个脚本,便于复制、粘贴、分发和重用。在
waffles似乎正是你想要的,尽管我没有尝试过
您可以手动执行此操作,例如:
然后可以将所有文件连接在一起,删除以
from .
开头的任何行,然后。。可能会有用。在也就是说,一个可执行的egg或常规PyPI发行版将更加简单和可靠!在
听起来你在问如何将你的代码库合并到一个2000多个源文件中你真的真的确定要这么做吗?这会使你的代码更难维护。Python文件与模块相对应,因此除非主脚本对其所有部分执行
from modname import *
,否则将通过将其转换为一个文件而丢失模块结构。在我建议让源代码保持原有的结构,并解决如何分发程序的问题:
您可以使用PyInstaller、py2exe或类似的方法生成一个甚至不需要安装python的可执行文件。(如果您可以相信python会出现,请参阅下面@Sebastian的评论。)
如果您想将代码库分发给其他python程序使用,那么首先应该将其结构化为一个包,这样就可以用一个
import
来加载它。为了方便地分发大量python源文件,您可以将所有内容打包到zip归档文件或“egg”(实际上是一个包含特殊管理信息的zip归档文件)。Python可以直接从zip或egg存档导入模块。
相关问题 更多 >
编程相关推荐