Python

以后就玩Python了。交流QQ群:250329766

Python元类

从某种意义上讲,元类只是扩展了装饰器的代码插入模式。 元类主要是针对那些构建API和工具供他人使用的程序员。 Python构建工具: 内省属性。如__class__、__dict__ 运算符重载方法。如__str__、__add__ 属性拦截方法。如__getattr__、__setattr__、__getattribute__。 类特性。内置函数property。拦截特定的属性。 类属性描述符。拦截特定的属性。特定只是定义根据访问自动运行函数的属性描述符的一种简洁方式。 函数和类装饰器。 元类。

Python 数据分析资料整理

Scipy Numpy Pandas Matplotlib Seaborn scikit-learn

Python 中的枚举类型

enum 模块的用法很简单,功能也很明确,但是其实现方式却非常值得学习。如果你想更深入了解更多 Python 中关于 Class 和 Metaclass 的黑魔法,又不知道如何入手,那么不妨阅读一下 enum 的源码,或者关注接下来后面几篇的内容!

python自动化工具从0到invork&ansible

显然的,我的可重复、有用的项目自动化之旅还有很长的路要走,但是我已经在invoke和ansible的交界处明确地发现了一些非常有用工具。 我们获得了Python所有的可组合性,Ansible所有的实用性,以及一个task runner所有的便利性。

Python模块学习:tempfile

应用程序经常要保存一些临时的信息,这些信息不是特别重要,没有必要写在配置文件里,但又不能没有,这时候就可以把这些信息写到临时文件里。其实很多程序在运行的时候,都会产生一大堆临时文件,有些用于保存日志,有些用于保存一些临时数据,还有一些保存一些无关紧要的设置。在windows操作系统中,临时文件一般被保存在这个文件夹下:C:/Documents and Settings/User/Local Settings/Temp。其实我们最常用的IE浏览器在浏览网页的时候,会产生大量的临时文件,这些临时文件一般是我们浏览过的网页的本地副本。Python提供了一个tempfile模块,用来对临时数据进行操作。

python绝技:运用python成为顶级黑客

有简单的基础语法介绍,最好还是先有系统学过python再看这本书,会事半功倍。 书籍偏老,2012年的,有些链接失效。另外建议学习期间使用virtualenv, 避免影响到其它项目。 建议看原版,翻译的感觉很一般,有点像是google翻译的。虽然连蒙带猜的看懂,看的有点痛苦,还是建议翻原版,篇幅主要是代码, 英文应该也好看。 有些示例代码可能得相应地改下。譬如pexpect连接ssh那个,代码里是期望提示值是password: 但是我测试的Centos的格式是user@host's password: 需要自己根据情况去修改下。 ftp破解后,上传文件的代码在python3上执行失败,抛异常了。python2.7没事。 建议用python2.7来运行他的代码。 里面的攻击手段其实已经过期了,仅能参考下。

python学习手册

这是我目前为止看过内容最丰富的python书。以python2.6和python3.0为基础讲解的,并且对比了两个差别。适合大概浏览后放在桌上的参考书。本书定位为基础书籍。讲得比较细,但是对有经验的程序员来说,会感觉很啰嗦,该略过就略过吧,没啥损失。看过这本书之后,之前写代码和看代码时的疑惑都得到了解答。_^ 学语法,这本书就够了。 要写出程序,还要看《标准库》。特定领域的功能得熟悉特定领域的模块。 要写网站,可能还得看django或flask等框架。 程序结构要好,易于扩展,要看设计模式。 值得买一本放到桌上:https://s.click.taobao.com/Nq5KsAx

python标准库

书有点老,10年的,不过不长,只有329页。到处找了下,貌似都是10/06/07的那本。 书上的例子只有2.0下运行通过。我用的2.7,除了极个别的,都运行通过了。 讲的并不深入,就是对python的标准模块有个了解,有个大概的印象。基本上每个模块都给了个简单的例子。 还是推荐阅读下,全面了解下python标准模块对于阅读理解各种第三方模块的源码很有帮助。我个人感觉到的就是python还真是强大,各种功能都有,确实是unix管理者和黑客爱的玩意儿。我估计也会在这条路上走的越来越远。(虽然以前也写了好几年的php,objective-c,java,但从来没有这么认真过。_) 可以搭配着《unix环境高级编程》一起阅读,要不然有些概念是看了完全没有印象的。 代码已经入github

application not registered on db

我在用Flask开发的时候,打算写个脚本用作cron定时执行。打算直接用flask中的model和sqlalchemy,并且有些代码可能会在应用中用到。代码终于写完了。。然后得到了错误"RuntimeError('application not registered on db '" and RuntimeError: application not registered on db instance and no application bound to current context。找到下面的文章 原文链接:http://piotr.banaszkiewicz.org/blog/2012/06/29/flask-sqlalchemy-init_app/ 下面是翻译。

Flask部署方案(ubuntu):Virtualenv+Supervisor+Nginx

首先是概念解释 WSGI服务器,负责我们的app与服务器的交互,常用的有Gunicorn。flask自带的不够健壮,不能用在生产服务器上。 Web服务器,是个HTTP服务器,就相当于tomacat于Java,常用的有Nginx,用作反向代理,负载均衡什么的。 Web服务器中,Nginx是一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。 部署工具: Virtualenv,用户创建独立的虚拟的Python运行环境,可以解决版本,依赖等问题。 Supervisor,负责管理应用:应用的开启,关闭,以及多应用的管理等