月度归档:2013年01月

将 netbeans的 快捷键 设置为 eclipse了,向eclipse 致敬!

今天(和昨天),用了几个 python 的 ide

eric: 用来开发基于QT的图形界面不错,但貌似不适合写程序,连创建文件都“麻烦”

SPE:传说中的利器,开发UML,代码视图显示的喜欢。但不太喜欢它的debug

pyscripter:免安装的绿色版,不过正因为此,我好多模块装在系统的python上,用不了,至少不能直接用。

最后 eclipse插件pydev  感觉还不错。但显示的也不是很好,没错的代码 也显示红色。别的问题慢慢再发现。

python 深拷贝 浅拷贝

在值和引用之间,除了赋值、函数传参(赋值的一种) 之外 还有一个现象即是 拷贝。

这个问题主要出现在 面向对象的系统中,不同语言可能不是完全一样。这里写python

深拷贝 Deep copy  浅拷贝 Shallow copy

可以看到,浅拷贝 只 拷贝了 当前 对象本身,对 对象内部的 对象 还是 引用 没有拷贝,而深拷贝 则会全部拷贝(可以想成 递归浅拷贝)

除了实实在在的拷贝外,对于“纯对象”,还可以通过序列化来实现。比如 先转化成JSON 字符串,然后再 生成新对象:newobj =  json.loads ( json.dumps( obj ) )

除了这两种拷贝之外 还有一个 Lazy copy,具体可参见:http://en.wikipedia.org/wiki/Object_copy

同样的语句,不一样的组织, 既是 软件工程。虽然是完成的任务是一致的,但其中的封装性,耦合性,背后的思考逻辑是不一样的。

RSA

两年前要写的RSA,没写完,今天看到了,接着写完了。只是个 Demo,不支持 大整数,和字符

 

python decorator

函数/方法  装饰器/修饰符

这是一个语法结构,目的 是降低程序复杂度,让代码看起来比较清爽。

直接原因是python面向对象时,为了 解决 类的static方法。

最先版本的暂时方法(定义一个类的static方法)

可以看到 第4行,显得非常另类。如果用 现在的 装饰器语法,则是这样

从例子 可以看到 装饰器 实际 就是 函数,使用装饰器即是利用其他函数来重定义函数,而且装饰器返回的也是函数

其语法 模型:

举个例子,我们写web程序用JSON数据格式与客户端交互,希望把 python的数据转换为JSON

如果有很多这样的函数,每个 都这样 写 会不会很不爽啊? 考虑写个装饰器?

看有没有感觉 爽啊,要知道 类似 gete_user_info 这样的函数是 大量的。。。。。

推荐使用喔,尤其是和 设计模式相结合的时候,比如 某个方法 需要验证权限啊,什么的

推荐阅读:http://blog.renren.com/blog/223904691/742408271?bfrom=011300082

好啦,就说这么多吧。。。。 有欢迎留言交流。。。。