由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Linux版 - 玩了玩 cython
相关主题
CentOS 5.5自带的python版本过低,能自己升级吗?Linux下如何提取驱动程序,然后复制到另一台电脑?
如何把python/scripts加到path里?scim 和 opera 冲突
问个 python 问题但是英文状态下怎么用 fcitx 输入还是不清楚
ubuntu怎么自动加载网卡?ibus for KDE based programs in GNOME
请教Thinkpad的tp-smapi-modulehow can i use chinese with qterm (ubuntu)?
xfrce里的scim怎么出来?Chinese input ... howto?
linux下有没有象wampserver的module?ubuntu关机的问题
/etc/modules在ubuntu 9.04的哪个包里?[求助] 寻找特定版本的kernel source 来build .ko 文件
相关话题的讨论汇总
话题: cython话题: python话题: module话题: api话题: 感觉
进入Linux版参与讨论
1 (共1页)
S*A
发帖数: 7142
1
感觉没有第一眼看上去那么好。
这个可能和我个人习惯有关。写 Python C module,
我已经是大半个熟练工种了,我甚至写过直接从 C source
生成 Python C module 的东西。过于复杂没有发表。
这个 cython 生成的 C file 非常乱,没法读的。
这个比较打击我的热情。cyx 的语法很怪,类似 python
但是又有很多细节的规则要记住。有点隔靴挠痒的感觉,
这个我上次就说过了。我觉得费那么多力气就是为了避免
直接写 Python C module 似乎不是很值得。Python C
module 非常有规律可寻的,虽然看起来 Code 很多,
但是结构性很强,所以很容易理解。而且这些理解能帮助
你进一部了解 Python 内部工作原理,对写好 Python Code
很有帮助的。关键是这个 cython 的代码感觉不优美,里面
magic 太多。我个人是比较不喜欢 magic 系统的。
而且归根到底这是个比较鸡肋的市场。如果我要 performance.
那我就直接把数据 dump 到 C module 里面好了。关键部分用
C 写没有什么碍手碍脚的。Python 的 list, dictionary 在
C 里面访问都很容易的。至少感觉比较有章法。
适合 cython 的大概是要求开发很快,速度要比普通 Python
快,但是又不是特别高,又痛恨写 C code 的情况比较适合。
例如玩矩阵运算这些人。
学这个 cython 有些门槛,如果没玩过 Python C API 的人我
建议先学学 C API. 再学 cython 就可以比较有感觉 cython
到底帮你省了什么。
C module 对我来说已经是 sinking cost,所以没有很多动力学
奇怪规则的 cython。 写 cython 没有写 C module 感觉好,
虽然写得快一些。不同人的结论很可能会不一样。
F*******i
发帖数: 190
2
Well said.
Any suggestions/docsto write c modules for python?
Also, any suggestions to connect c++ <-> python? (boost/swig/cython?)
thanks!

【在 S*A 的大作中提到】
: 感觉没有第一眼看上去那么好。
: 这个可能和我个人习惯有关。写 Python C module,
: 我已经是大半个熟练工种了,我甚至写过直接从 C source
: 生成 Python C module 的东西。过于复杂没有发表。
: 这个 cython 生成的 C file 非常乱,没法读的。
: 这个比较打击我的热情。cyx 的语法很怪,类似 python
: 但是又有很多细节的规则要记住。有点隔靴挠痒的感觉,
: 这个我上次就说过了。我觉得费那么多力气就是为了避免
: 直接写 Python C module 似乎不是很值得。Python C
: module 非常有规律可寻的,虽然看起来 Code 很多,

S*A
发帖数: 7142
3
我觉得 Python 官方的文档 C API 那部分就挺好。上手是够用的。
自己写个 module 调用自己的 function. 创建一个 extenstion type.
写个基本的 method. 这个就是不错的开始了。
深入的没有很多文档。主要的困难在于 python type struct
里面有很多 member, 怎么用不是很多文档。这个最好的就是看
Python 自己的 source code. Python/objects/
例如你好实现个 dictionary 类似的 type. 看 dictobjects.c
一般 Python 内部的 Object 有很多 fancy 的功能。或者类似的
object. 粗看代码很多。把注意力放你要实现的那些动能先。
c++ -> python 有写工具可以用的,但是我不是很熟悉。
我一般不用 c++。

【在 F*******i 的大作中提到】
: Well said.
: Any suggestions/docsto write c modules for python?
: Also, any suggestions to connect c++ <-> python? (boost/swig/cython?)
: thanks!

F*******i
发帖数: 190
4
cool.
thanks a lot.

【在 S*A 的大作中提到】
: 我觉得 Python 官方的文档 C API 那部分就挺好。上手是够用的。
: 自己写个 module 调用自己的 function. 创建一个 extenstion type.
: 写个基本的 method. 这个就是不错的开始了。
: 深入的没有很多文档。主要的困难在于 python type struct
: 里面有很多 member, 怎么用不是很多文档。这个最好的就是看
: Python 自己的 source code. Python/objects/
: 例如你好实现个 dictionary 类似的 type. 看 dictobjects.c
: 一般 Python 内部的 Object 有很多 fancy 的功能。或者类似的
: object. 粗看代码很多。把注意力放你要实现的那些动能先。
: c++ -> python 有写工具可以用的,但是我不是很熟悉。

1 (共1页)
进入Linux版参与讨论
相关主题
[求助] 寻找特定版本的kernel source 来build .ko 文件请教Thinkpad的tp-smapi-module
如何在fcitx下输入中文xfrce里的scim怎么出来?
nvidia显卡driver的问题linux下有没有象wampserver的module?
chromium os 在 X200 上启动不了/etc/modules在ubuntu 9.04的哪个包里?
CentOS 5.5自带的python版本过低,能自己升级吗?Linux下如何提取驱动程序,然后复制到另一台电脑?
如何把python/scripts加到path里?scim 和 opera 冲突
问个 python 问题但是英文状态下怎么用 fcitx 输入还是不清楚
ubuntu怎么自动加载网卡?ibus for KDE based programs in GNOME
相关话题的讨论汇总
话题: cython话题: python话题: module话题: api话题: 感觉