Py2exe_py import

Py2exe_py import转载自:http://www.cnblogs.com/jans2002/archive/2006/09/30/519393.html一、简介py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。py2exe已经被用于创建wxPython,Tkin

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

转载自:http://www.cnblogs.com/jans2002/archive/2006/09/30/519393.html

一、简介



py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。




py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame,win32com client和server,和其它的独立程序。py2exe是发布在开源许可证下的。




二、安装py2exe





http://prdownloads.sourceforge.net/py2exe
下载并运行与你所安装的Python对应的py2exe版本的installer,这将安装py2exe和相应的例子;这些例子被安装在lib\site-packages\py2exe\samples目录下。




三、py2exe的用法




如果你有一个名为helloworld.py的python脚本,你想把它转换为运行在windows上的可执行程序,并运行在没有安装python的windows系统上,那么首先你应写一个用于发布程序的设置脚本例如mysetup.py,在其中的setup函数前插入语句import py2exe 。


mysetup.py示例如下:


# mysetup.py


from distutils.core import setup


import py2exe




setup(console=[“helloworld.py”])


然后按下面的方法运行mysetup.py:


python mysetup.py py2exe


上面的命令执行后将产生一个名为dist的子目录,其中包含了helloworld.exe,python24.dll,library.zip这些文件。


如果你的helloworld.py脚本中用了已编译的C扩展模块,那么这些模块也会被拷贝在个子目录中,同样,所有的dll文件在运行时都是需要的,除了系统的dll文件。


dist子目录中的文件包含了你的程序所必须的东西,你应将这个子目录中的所有内容一起发布。




默认情况下,py2exe在目录dist下创建以下这些必须的文件:


1、一个或多个exe文件。


2、python##.dll。 


3、几个.pyd文件,它们是已编译的扩展名,它们是exe文件所需要的;加上其它的.dll文件,这些.dll是.pyd所需要的。


4、一个library.zip文件,它包含了已编译的纯的python模块如.pyc或.pyo


上面的mysetup.py创建了一个控制台的helloword.exe程序,如果你要创建一个图形用户界的程序,那么你只需要将mysetup.py中的console=[“helloworld.py”]替换为windows=[“myscript.py”]既可。




py2exe一次能够创建多个exe文件,你需要将这些脚本文件的列表传递给console或windows的关键字参数。如果你有几个相关联的脚本,那么这是很有用的。


运行下面个命令,将显示py2exe命令的所有命令行标记。


python mysetup.py py2exe –help




四、指定额外的文件


一些应用程序在运行时需要额外的文件,诸如配置文件、字体、位图。


如果在安装脚本中用data_files可选项指定了那些额外的文件,那么py2exe能将这些文件拷贝到dist子目录中。data_files应包含一个元组(target-dir, files)列表,其中的files是这些额外的文件的列表。


示例如下:


# mysetup.py


from distutils.core import setup


import glob


import py2exe




setup(console=[“helloworld.py”],


      data_files=[(“bitmaps”,


                   [“bm/large.gif”, “bm/small.gif”]),


                  (“fonts”,


                   glob.glob(“fonts\\*.fnt”))],


)


说明:data_files选项将创建一个子目录dist\bitmaps,其中包含两个.gif文件;一个子目录dist\fonts,其中包含了所有的.fnt文件。




五、Windows NT services




你可以通过传递一个service关键字参数给setup函数来建造Windows NT services


,这个service参数的值必须是一个Python模块名(包含一service类)的列表。


示例如下:


# mysetup.py


from distutils.core import setup


import py2exe




setup(service=[“MyService”])


所建造的可执行的service是可以通过在其后跟一定的命令行参数标记来自行安装和卸载的。你可以通过在这个可执行的service(exe)后跟一-help参数来得到更多的帮助。


六、COM servers




你可以通过传递一个com_server 关键字参数给setup函数来建造Windows NT services


,这个service参数的值必须是一个Python模块名(包含一个或多个COM server 类)的列表。


示例如下:


# mysetup.py


from distutils.core import setup


import py2exe




setup(com_server=[“win32com.server.interp”])


默认情况下,DLL和EXE servers被建造,你不需要它们的话你可以简单的删除它们。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195259.html原文链接:https://javaforall.net

(0)
上一篇 2025年10月20日 下午7:43
下一篇 2025年10月20日 下午8:15


相关推荐

  • 利用js给datalist或select动态添加option选项

    利用js给datalist或select动态添加option选项

    2021年11月8日
    48
  • Spring JpaTransactionManager事务管理

    Spring JpaTransactionManager事务管理    首先,在做关于JpaTransactionManager之前,先对Jpa做一个简单的了解,他毕竟不如hibernate那么热门,其实二者很相识,只不过后期hibernate和JDO版本都已经兼容了其Jpa,目前大家用的少了。   JPA全称JavaPersistenceAPI.JPA通过JDK5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化…

    2025年7月21日
    5
  • OpenClaw极速部署指南:2026年从零到一的全流程实践

    OpenClaw极速部署指南:2026年从零到一的全流程实践

    2026年3月13日
    2
  • autosize px转dp_Android屏幕适配实例教程「今日头条,AutoSize」

    autosize px转dp_Android屏幕适配实例教程「今日头条,AutoSize」Android屏幕适配实例教程即使只是练习项目,仍然要使用屏幕适配,这样我们就可以跟着设计图上的单位参数敲,效率会快很多项目的示范代码使用kt语言,但没有用到什么高级特性,完全不懂的参考这个链接,文章参考代码已经上传到Github,本篇相关的设计图链接戳这里这里提供一个App的UI设计图小白日记,仅供参考前期与UI之间的沟通1)确定设计图基准=可以简单理解为以某个尺寸为基准,然后通过改变对应的比例…

    2022年6月5日
    63
  • R语言doParallel+foreach 并行计算初试牛刀「建议收藏」

    R语言doParallel+foreach 并行计算初试牛刀「建议收藏」前言 因为我学习的需要,要做模拟,需要用到前人写好的函数,然后又需要大量的循环(模拟一百次,每次生成500条曲线,450条训练,50条做预测)。每次做个运算要半个小时左右,实在是受不了了之后,找了很多的博客和也下载了cran的帮助文档来看。最后终于一遍遍的试出来了。包的安装 首先需要将doParallel的包安装带上去,而doParallel的包基于foreach,iterators和par…

    2022年7月19日
    23
  • 计算机组成bcd码,bcd码怎么换算(8421bcd码计算器)

    计算机组成bcd码,bcd码怎么换算(8421bcd码计算器)bcd 码就是 0 9 共 10 个数字 对应的二进制码就是 0000 1001 如 7 对应 0111 26 对应 00 456 对应 0 其文件运行如图所示 如果每位 BCD 码使用一个 bcd 码是十位二进制码 也就是将十进制的数字转化为二进制 但是和普通的转化有一点不同 每一个十进制的数字 0 9 都对应着一个四位的二进制码 对应关系如下 12 34 56 34 32

    2026年3月20日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号