对不起,如果这是一个愚蠢的问题,但我一直在寻找答案,但我找不到一个答案。我正在使用PySide在Mac OS X上使用Cython创建一个gui应用程序。由于速度问题,我选择使用Cython。我想有一个小问题会是,我是否在无所事事上做文章,我甚至需要担心速度问题?发布在Mac OS X上用Cython写的GUI应用程序
我听说Cython编译器创建了.c文件。但是,我不能将这些作为我的申请(显然)分发。我想分发它作为一个应用程序包(.app),而不仅仅是一个可执行文件。
我曾尝试使用编译Xcode的C代码,但它创造了Unix的可执行文件,它在运行时,打开一个终端窗口,这是不能接受的,看到我的应用程序有它自己的GUI。
我也查看了关于bundle的Apple文档,如果需要的话我可以手动创建一个,但我更喜欢由xcode(或其他某个程序)创建的包,所以涉及的问题更少。
编辑:
我不会从用Cython得到充分速度受益,但我相信我会得到大部分。它会将我的Cython代码编译为python包(格式为.so格式),然后从py2app打包的python应用程序中访问它,它所做的只是导入库并启动gui?这只是我想到的一种解决方法,所以请随时告诉我它是否愚蠢。
那仍然会有很好的速度奖励吧?我认为它会,因为python解释器必须读更少的python代码。 – KFox
你拥有的C代码越多,它的速度就越快。阅读Cython的基本知识:第一个众所周知的改进是,通过显式输入 - “cdef keyword”可以节省很多。例如,在[for loops]中递增时(http://technicaldiscovery.blogspot.fr/2011/06/speeding-up-python-numpy-cython-and.html)。除了[this](http://docs.cython.org/src/userguide/early_binding_for_speed.html),[this](http://docs.cython.org/src/tutorial/profiling_tutorial.html),还[本](http://blog.perrygeo.net/2008/04/19/a-quick-cython-introduction/)。 –