如何用py2app把.py文件转为.app文件(简介,macOS)

目录

简介:

安装:

使用:

pps

声明


简介:

Py2app是一个用于将Python脚本转换为可执行应用程序的工具,可用于Mac OS 操作系统上它允许您将Python应用程序和所有依赖项捆绑在一起,创建一个独立的应用程序,而无需安装Python或任何其他库.

使用Py2app,您可以将Python编写的应用程序转换为Mac应用程序,这样用户就可以像使用其他应用程序一样使用您的应用程序.

安装:

pip3 install py2app

    可能下载其它依赖包,如:altgraph>=0.17.3, modulegraph>=0.19.3,以及macholib>=1.16.2和setuptools等

使用:

首先,我们切换到.py文件所在的目录(建议单独创建一个文件夹保存.py文件)

接着,输入py2applet --make-setup yourpy.py

ps:yourpy就是你的.py文件

py2applet --make-setup yourpy.py

这时,会出现Wrote setup.py

Wrote setup.py

这就代表.py文件的设置文件写成功了

ps:test1.py相当于yourpy.py

setup.py已经出现了

里面的内容大概是这样:

"""
This is a setup.py script generated by py2applet

Usage:
    python setup.py py2app
"""

from setuptools import setup

APP = ['yourpy.py']
DATA_FILES = []
OPTIONS = {}

setup(
    app=APP,
    data_files=DATA_FILES,
    options={'py2app': OPTIONS},
    setup_requires=['py2app'],
)

 最后,再输入python3 setup.py py2app -A

python3 setup.py py2app -A

在展示了乱七八糟的输出后会显示done

文件变成了这样

build文件夹直接删掉 

打开dist文件夹

就出现这个App了

双击就能运行了! 

pps

如果你的程序没有图形化界面,该怎么办呢?

右键创建的App,按下显示包内容

"

打开Contents文件夹(直接双击打开) 

 

里面有这几个文件 

 选macOS文件夹

里面大概是这样的

选择上面标有exec图标的文件,就能用了

还可以command+c,command+v 复制到其他地方去 

输出有点简陋,但是还行

官网:py2app - Create standalone Mac OS X applications with Python — py2app 2.0a0 documentationhttps://py2app.readthedocs.io/en/latest/

`py2app`是一个用于将Python应用程序转换为独立的MacOS应用 bundles 的工具,并不是专门针对`.pyc`文件打包设计的。通常我们使用它来打包包含`.py`源码文件的应用程序。 如果你想通过`py2app`打包项目,在项目的根目录创建一个setup.py文件,内容类似于下面的例子: ```python from setuptools import setup APP = ['your_main_script.py'] DATA_FILES = [] OPTIONS = {'argv_emulation': True} setup( app=APP, data_files=DATA_FILES, options={'py2app': OPTIONS}, setup_requires=['py2app'], ) ``` 然后你可以运行命令 `python setup.py py2app` 来构建你的应用。需要注意的是,默认情况下`py2app`会处理整个依赖树并包括所有必要的 `.pyc` 文件以及其它资源作为一部分生成的应用包的一部分;因此你不需要直接提供.pyc文件给这个过程 - 只需指定主脚本即可。 不过要注意几个点: - 如果你想强制只使用字节编译后的(.pyc)版本而不是原始源代码(.py),可以在环境中设置 PYTHONDONTWRITEBYTECODE 环境变量等于非零值(比如1), 或者可以尝试修改site.py以禁止 .pyc 文件的写入。 - 还有一点值得注意的是,从 Python文件 (.py) 创建的二进制分发版 (无论是 exe、app bundle还是其他形式) 并不会提高执行速度; 它们主要是为了方便部署或隐藏源代码. 最后提醒一下,对于最新的 python 版本来说,可能需要考虑是否仍然支持旧版本如 Python 2.x的问题,因为很多现代工具已经不再维护对它的兼容了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值