- 浏览: 342884 次
- 性别:
- 来自: 上海
最新评论
-
CFJAVA:
分析的真仔细,拜读了!
深入剖析SolrCloud(三) -
cc3514772b:
目前也在使用solr ,想跟lz交流下。。
深入剖析SolrCloud(三)
文章列表
上一篇里的LAME项目已经展示了python如何与C语言交互,但程序仍不够理想,在python这一端仅仅是传递源文件和目标文件的路径,再调用C模块的encode方法来进行编码,但问题在于你无法控制encode函数,比如你想编码的源文件如果不是原始数据,而是wav文件或者其他格式呢?对于这个问题,有两种方法可以选择,一种模仿前面的C模块,在你的Python代码中读取数据,并将数据块逐个传递给encode函数,另一种方法是你传进去一个对象,这个对象带有一个read方法,这样你就可以在C模块里直接调用它的read方法来读取其数据。
听起来好像第二种更加面向对象,但实际上第一种方法反而是更为合适的选 ...
- 2010-05-23 00:08
- 浏览 496
- 评论(0)
上一篇中我们已经了解如何在Python程序和C模块之间进行值的相互传递,现在我们来进入实作阶段,看看如何将一个C语言开发的开源mp3编解码库LAME包装为一个Python下可以使用的扩展模块。
首先去http://lame.sourceforge.net/download.php下载LAME的源代码,然后切换到root用户编译源代码,
<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighli ...
- 2010-05-22 18:08
- 浏览 441
- 评论(0)
在上一篇中我们已经使用c语言实现了一个最简单的扩展模块,这一篇中将在其基础上进行功能的丰富。
首先来考虑如何从外部的Python向C模块传递进参数,foo_bar2展示了如何向C模块传递整数,浮点数,字符串三个参数,其中"ids"指明了传入参数的数据类型。PyArg_ParseTuple负责对args进行解析,若解析失败则返回0.
代码
<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www ...
- 2010-05-22 01:10
- 浏览 449
- 评论(0)
开发环境:Ubuntu9.10,python2.6,gcc4.4.1
1,ubuntu下的python运行包和开发包是分开的,因此需要在新利得里面安装python-all-dev,从而可以在代码中引用python的头文件和库。
2.下面是一个最简单的可以供python调用的c扩展模块,假设c程序文件名为foo.c:
代码
<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.c ...
- 2010-05-17 02:08
- 浏览 415
- 评论(0)
AMFPHP是PHP的远程调用(RPC, Remote Procedure
Call)工具。它可以使PHP与下述技术无缝通信:
(1) Flash 和 Flex Remoting
(2) JavaScript JSON 和 Ajax JSON
(3) XML 和XML-RPC
什么是RPC
远端程序调用(RPC, Remote Procedure
Call) 是一种客户端与服务器端交换数据方式。我们可以调用本地对象带对各种参数方法设置回调并接受调用结果。我们不用关心发送和接收数据的实现细节。实现细节通常是抽象的,就像我们在调用本地方法一样。
AMFPHP的工作原理 ...
- 2010-05-10 11:07
- 浏览 282
- 评论(0)
1,字典的输出
<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />-->person={'name':'james','age':22}print("%(name)s,%(age)d"%person)importstringperson={'name':'james','age':2 ...
- 2010-05-09 23:07
- 浏览 282
- 评论(0)
当执行import
module时,解释器会根据下面的搜索路径,搜索module1.py文件。
1) 当前工作目录
2) PYTHONPATH中的目录
3) Python安装目录
(/usr/local/lib/python)
事实上,模块搜索是在保存在sys.path这个全局变量中的目录列表中进 ...
- 2010-05-07 20:09
- 浏览 351
- 评论(0)
1,《Python How To
Program》
这本书是2001年的老书了,连它使用的python版本我都没弄清楚,不过我python却是从此书入门的。里面没有Set,还在讲老掉牙的CGI,不过对操作符的重载讲解的不错,其他诸如多线程,网络,XMl,数据库,文 ...
- 2010-05-04 20:09
- 浏览 514
- 评论(0)
1,先说说今天体会最深刻的一点:写python代码,一个好的编辑器至关重要,这其中VIM确实是最佳选择。由于python是根据缩进来判断上下文的,因此tab和空格使用不当会害死你的。一段代码在Notepad++里看起来对齐格式没问题,可就是死活编译不过,来到vim下一看,damn it,格式是乱的。本想用4个空格替换掉所有的tab,可该死的Notepad++居然并没有全部替换掉,再换UltraEdit32,依然如故,不得已,最后换了EmEditor,比前面两个强多了,
2,python实现遍历文件夹下所有文件
代码
<!--<br/ /><br/ /> ...
- 2010-04-29 20:08
- 浏览 619
- 评论(0)
1,使用python提交post请求时,如果参数中包含中文,则会提交失败,因此需要将参数进行utf-8编码,示例如下:
<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />-->self.name=name.encode("utf-8")
2,一直在linux下使用python2 ...
- 2010-04-28 20:08
- 浏览 584
- 评论(0)
1,python2.4不支持下面这种异常处理语法
<!--<br/ />
<br/ />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />
http://www.CodeHighlighter.com/<br/ />
<br/ />
-->try:except:finally:
只有2.5以上才行,为此只能改成下述写法,damn fuck python 2.4...
<!--<br/ ...
- 2010-04-27 21:08
- 浏览 469
- 评论(0)
一,win32codes的安装
1)首先将Medibuntu的软件源加入到Ubuntu中,同时将其GPG密钥加入到密钥环中,它将用于对其下面包含的包进行验证,这些可以通过下述命令完成:
代码
<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />-->sudowget--output-document=/et ...
- 2010-04-22 01:08
- 浏览 391
- 评论(0)
代码
<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />-->interfaceStringSearchable{publicfunctionsearch($substring,$buffer);}classBoyerMooreStringSearchimplementsStringSearchable{pu ...
- 2010-04-21 23:08
- 浏览 353
- 评论(0)
PHP中有下列称之为魔术方法(magic method)的函数:__construct, __destruct ,
__call, __callStatic,__get, __set, __isset, __unset , __sleep, __wakeup,
__toString, __set_state, __clone and __autoload,本文使用__call为实现一个身份验证的简单实例,代码如下:
代码
<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighte ...
- 2010-04-19 21:09
- 浏览 373
- 评论(0)
1. 安装文泉驿微米黑字体:
<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />-->sudoaptitudeinstallttf-wqy-microhei
2. 修改字体选择文件/etc/fonts/conf.d/69-language-selector-zh-cn.conf
<!--<br ...
- 2010-04-14 22:55
- 浏览 807
- 评论(0)