python下的curses开发
原来在aix下用python写了个用curses的程序,最近总是觉
得窗体做的不够好,上网找到了个更好的库,cdk,在curses的基础上开发组件。同时,它也有个在pyhon下的扩展叫pycdk。不过在我用的
suse9.3下没有安装上pycdk总是说编译有问题。看了,一下pycdk的说明,它是基于ckd和pyrex实现的。所以开始学习pyrex.现在
只是简单的看了一下pyrex的说明。
Pyrex 语言
,用它来编写 Python 扩展模块。Pyrex 的主旨是定义一种看起来很接近 Python 本身的语言,它允许 Python 和 C 数据类型的混合,但最终要将其转换并编译成 Python C 扩展。参见
可爱的 Python:用 Psyco 让 Python 运行得像 C 一样快里面还有一段说明:Greg Ewing 已经创建了名叫 Pyrex 的语言,该语言融合了 Python 和 C。特别地,要使用 Pyrex,需要用类似
Python 的语言编写函数,这种语言将类型声明添加到所选变量中。Pyrex(工具)将“.pyx”文件处理成“.c”扩展名的文件。一旦用 C
编译器进行了编译,就可以将这些 Pyrex(语言)模块导入常规的 Python 应用程序并使用。由于 Pyrex 使用的语法和 Python
本身的语法(包括循环、分支和异常语句、赋值方式、块缩进等等)几乎一样,因此 Pyrex 程序员不需要学会用 C 去编写扩展。而且,与直接用 C
编写扩展相比,Pyrex 允许在同一代码中更无缝地混合 C 级别的变量和 Python 级别的变量(对象)。
读了,可还是不知道怎么用。下一步要看一下
limodou的
[pyrex学习]笔记
http://www.donews.net/limodou/archive/2004/08/12/66928.aspx
找到了一个好文章
Pyrex 扩展并加速 Python 应用程序
http://www-128.ibm.com/developerworks/cn/linux/l-cppyrex.html?ca=dwcn-newsletter-linux
cdk编译过程要注意默认安装路径是/usr/local/下的include/和lib目录,可改为在/usr/,或者设置include变量。
suse自带的pyrex-0.9.3-7版本有一个bug,无法执行,需改为Pyrex-0.9.4.1以上版本。
pycdk下有一个的有两个函数cdk中不存在BUTTONT和scale,没办法只好将cdk.pyx中的相关代码注释掉,否则不能编译。不知是什么原
因,安装后经实验大部分的example都可以运行,只是相关button的pyhon代码有错误。还要好好研究一下解决的方法。