这篇文章将为大家详细讲解有关脱离Python环境运行的问题所使用的工具是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
关于脱离Python环境运行的问题,再次重申。
如果你在Python环境运行中,只是希望用户运行一个单独的程序而不需要预先下载一个python的发行版,则并不需要将Python代码编译成C代码。有很多工具可以找出程序依赖的模块并将这些模块 与程序绑定在一起以产生一个单独的执行文件。
其中一种工具就是freeze tool, 它作为Tools/freeze被包含在python的代码树中。它将python字节码转换成C数组,和一个可将你所有模块嵌入到新程序中的编译器,这个编译器跟python模块链接在一起。
它根据import语句递归地扫描源代码,并查找在标准python路径中的模块和源代码目录中的模块(内建模块)。用python写的模块的字节码随后被转换成C代码(可以通过使用marshal模块转换成代码对象的数组构 造器),并产生一个可自定义的配置文件,只包含程序使用了的模块。
***将生成的C代码编译并链接至余下的的python解释器,在脱离Python环境运行中产生一个与你的script执行效果完全一样的单独文件。
显然,freeze需要一个C编译器。但也有一些工具并不需要。首先便是Gordon McMillan's installer,它工作在Windows, Linux和至少是部分Unix变种上。 (注:在*nix下推荐此方式。通过make后得到一个独立的文件。)另一个便是Thomas Heller的 py2exe (只适用于Windows平台),它在(注:在win下推荐此方式,使用简单,功能强大。缺点是会生成一大堆文件。
和必须要python.dll)第三个是Christian Tismer的 SQFREEZE,它将字节码附在一个特殊的python解释器后面,解释器负责找到这段代码。Python 2.4可能会引入类似的机制。
其它工具包括Fredrik Lundh的 Squeeze 和 Anthony
关于脱离Python环境运行的问题所使用的工具是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。