Gra*_*son 7 python macos py2app
好的 - 这就是.我正在尝试学习如何使用py2app,所以我创建了一个简单的python文件; 只是hello_world.py
#! /usr/bin/env python
def main():
print "Hello"
if __name__=="__main__":
main()
Run Code Online (Sandbox Code Playgroud)
我按照教程进行了以下操作:
py2applet --make-setup hello.py
python setup.py py2app -A
Run Code Online (Sandbox Code Playgroud)
这创建了两个子目录(build和dist),在dist中有一个名为hello.app的文件.我试图通过GUI启动它,但它启动不到一秒钟然后就消失了.然后我去了CL,但只是试图运行它没有用,所以我使用:
python hello.app
Run Code Online (Sandbox Code Playgroud)
出现以下错误:
/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python: can't find '__main__.py' in 'hello.app'
Run Code Online (Sandbox Code Playgroud)
我花了一整天谷歌搜索,但找不到任何教程或指南等我真的卡住了:-(
我不知道这是否有帮助,但这就是setup.py中的内容
"""
This is a setup.py script generated by py2applet
Usage:
python setup.py py2app
"""
from setuptools import setup
APP = ['hello.py']
DATA_FILES = []
OPTIONS = {'argv_emulation': True}
setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)
Run Code Online (Sandbox Code Playgroud)
Jam*_*mes 10
你已经成功使用了py2app - 它只是打开,打印"你好"然后很快关闭!
如果你想看到一些东西,那就让它暂停一下:
print "Hello"
import time
time.sleep(5)
Run Code Online (Sandbox Code Playgroud)
time.sleep暂停程序的秒数.
您真的只想将py2app与GUI应用程序或在后台运行的应用程序一起使用。
如果要从命令行运行py2app构建的应用程序,则需要在应用程序包内执行二进制文件;捆绑包本身不是直接可执行的,因此如下所示:
dist/hello.app/Contents/MacOS/hello
Run Code Online (Sandbox Code Playgroud)
对于只打印到标准输出的脚本,您可以尝试使用鸭嘴兽(尽管它不做py2app的依赖包装之类的东西)。
| 归档时间: |
|
| 查看次数: |
10329 次 |
| 最近记录: |