随笔分类 -  python

1
摘要:前面学习了理论,下面该练练手了。两台机器:10.1.6.186、10.1.6.159。fabric部署在10.1.6.186上面。1 执行一个简单的task任务,显示两台机器的/home/guol/目录下的文件?12345678910111213141516171819202122232425262... 阅读全文
posted @ 2014-12-08 18:45 zhepama 阅读(565) 评论(0) 推荐(0) 编辑
摘要:在python中有一个可以实现批量管理服务器的工具:fabric,在本地和远程机器上提供了一些基本的操作,并且可以上传/下载文件、执行sudo等功能。 学习环境:ubuntu 12.10+python2.7 安装fabric: 1 通过apt安装,apt-get installfab... 阅读全文
posted @ 2014-12-08 18:44 zhepama 阅读(1015) 评论(0) 推荐(0) 编辑
摘要:最近在看《Python源码剖析》,对Python内部运行机制比以前了解的更深入了,感觉自己有机会也可以做个小型的动态脚本语言了,呵呵,当然是吹牛了。目的当然不是创造一个动态语言,目的只有一个:更好的使用Python。看到模块导入那块的时候,终于对模块导入机制比较了解了,以防忘记特记录下来。模块的搜索... 阅读全文
posted @ 2014-12-05 11:24 zhepama 阅读(1873) 评论(0) 推荐(0) 编辑
摘要:Python提供了两个hook用于定制Python:sitecustomize 和 usercustomize,首先需要查看site包目录,然后就可以在此目录下创建usercustomize.py文件,文件的内容会影响python的每次调用,除非在调用时使用 -s 选项 禁止自动import。sit... 阅读全文
posted @ 2014-11-05 23:30 zhepama 阅读(1218) 评论(0) 推荐(0) 编辑
摘要:firefly使用了twisted的pb 来实现rpc:http://twistedmatrix.com/documents/current/core/howto/pb-usage.html服务端#!/usr/bin/env python# Copyright (c) Twisted Matrix Laboratories.# See LICENSE for details.from twisted.spread import pbfrom twisted.internet import reactorclass One(pb.Root): def remote_takeTwo(self... 阅读全文
posted @ 2014-01-29 23:36 zhepama 阅读(526) 评论(0) 推荐(0) 编辑
摘要:你的协议处理类通常是twisted.internet.protocol.Protocol的子类。许多协议处理继承于该类或者比该类更加方便的该类的子类。一个protocol类的实例可能反复连接,也可能在连接关闭之后销毁。这就意味着这些持续不断的配置信息不是保存在Protocol中。 这些持久性的配置被保存在工厂(Factory)类中,这些工厂类通常继承至twisted.internet.protocol.Factory,默认 的工厂类仅仅是实例化每个Protocol,然后设置他们的factory属性为这个默认的工厂实例本身。这就让每个Protocol都被存储,然后可能 修改,于是这样就形成了Pr 阅读全文
posted @ 2014-01-29 21:51 zhepama 阅读(857) 评论(0) 推荐(0) 编辑
摘要:这些天断断续续在看Firefly, 看了一下distributed模块的设计,其实就是使用的twisted.spread.pb觉得以后要是想用Firefly有必要了解一下twisted, 所以在网上查了一下资料,更好的资料莫过于官方资料了,官方的例子挺多的,我挑了这一个例子:这里给个官方的例子:server:from twisted.spread import pb# 这里使用Referenceable是可以通过远程调用获得此对象class Two(pb.Referenceable): # remote_前缀是twisted要求的规范, Server中提供的方法必须以remote_开头 d.. 阅读全文
posted @ 2014-01-29 04:50 zhepama 阅读(869) 评论(0) 推荐(0) 编辑
摘要:http://www.python.org/dev/peps/pep-0318http://wiki.woodpecker.org.cn/moin/WeiZhong/DecoratorsInPython24?highlight=%28decorator%29 阅读全文
posted @ 2014-01-29 04:05 zhepama 阅读(223) 评论(0) 推荐(0) 编辑
摘要:入门构造和初始化构造定制类用于比较的魔术方法用于数值处理的魔术方法表现你的类控制属性访问创建定制序列反射可以调用的对象会话管理器创建描述器对象持久化对象总结附录介绍此教程为我的数篇文章中的一个重点。主题是魔术方法。 什么是魔术方法?他们是面向对象的Python的一切。他们是可以给你的类增加”magic”的特殊方法。他们总是被双下划线所包围(e.g.__init__或者__lt__)。然而他们的文档却远没有提供应该有的内容。Python中所有的魔术方法均在Python官方文档中有相应描述,但是对于他们的描述比较混乱而且组织比较松散。很难找到有一个例子(也许他们原本打算的很好,在开始语言参考中有描 阅读全文
posted @ 2014-01-29 02:17 zhepama 阅读(351) 评论(0) 推荐(0) 编辑
摘要:译注:这是一篇在Stack overflow上很热的帖子。提问者自称已经掌握了有关Python OOP编程中的各种概念,但始终觉得元类(metaclass)难以理解。他知道这肯定和自省有关,但仍然觉得不太明白,希望大家可以给出一些实际的例子和代码片段以帮助理解,以及在什么情况下需要进行元编程。于是e-satis同学给出了神一般的回复,该回复获得了985点的赞同点数,更有人评论说这段回复应该加入到Python的官方文档中去。而e-satis同学本人在Stack Overflow中的声望积分也高达64271分。以下就是这篇精彩的回复(提示:非常长)类也是对象在理解元类之前,你需要先掌握Python 阅读全文
posted @ 2014-01-29 01:49 zhepama 阅读(482) 评论(0) 推荐(0) 编辑
摘要:目前我使用到的python中执行cmd的方式有三种:1. 使用os.system("cmd")这是最简单的一种方法,特点是执行的时候程序会打出cmd在linux上执行的信息。使用前需要import os。[python]view plaincopyprint?os.system("ls")2. 使用Popen模块产生新的process现在大部分人都喜欢使用Popen。Popen方法不会打印出cmd在linux上执行的信息。的确,Popen非常强大,支持多种参数和模式。使用前需要from subprocess import Popen, PIPE。但是Po 阅读全文
posted @ 2014-01-29 01:26 zhepama 阅读(578) 评论(0) 推荐(0) 编辑
摘要:Apache/lighttpd: 相当于一个request proxy,根据配置,把不同的请求转发给不同的server处理,例如静态的文件请求自己处理,这个时候它就像一个web server,对于fastcgi/python这样的请求转发给flup这样的Server/Gateway进行处理flup: 一个用python写的web server,也就是cgi中所谓的Server/Gateway,它负责接受apache/lighttpd转发的请求,并调用你写的程序 (application),并将application处理的结果返回到apache/lighttpdfastcgi: apache/l 阅读全文
posted @ 2014-01-27 00:28 zhepama 阅读(318) 评论(0) 推荐(0) 编辑
摘要:默认情况下,在windows下安装python之后,系统并不会自动添加相应的环境变量。此时不能在命令行直接使用python命令。1. 首先需要在系统中注册python环境变量:假设python的安装路径为c:\python2.6,则修改我的电脑->属性->高级->环境变量->系统变量中的PATH为:(为了在命令行模式下运行Python命令,需要将python.exe所在的目录附加到PATH这个环境变量中。)PATH=PATH;c:\python26上述环境变量设置成功之后,就可以在命令行直接使用python命令。或执行"python *.py"运行p 阅读全文
posted @ 2014-01-26 22:57 zhepama 阅读(644) 评论(0) 推荐(0) 编辑
摘要:http://www.lfd.uci.edu/~gohlke/pythonlibs/https://pypi.python.org/simple/ 阅读全文
posted @ 2014-01-20 17:44 zhepama 阅读(294) 评论(0) 推荐(0) 编辑
摘要:用easy_install和pip来安装第三方库很方便它们的原理其实就是从Python的官方源pypi.python.org/pypi 下载到本地,然后解包安装。不过因为某些原因,访问官方的pypi不稳定,很慢甚至访问不了。跟ubuntu的apt和centos的yum有各个镜像源一样,pypi也有。pipy国内镜像目前有:http://pypi.douban.com/ 豆瓣http://pypi.hustunique.com/ 华中理工大学http://pypi.sdutlinux.org/ 山东理工大学http://pypi.mirrors.ustc.edu.cn/ 中国科学技术大学对于pi 阅读全文
posted @ 2014-01-20 17:18 zhepama 阅读(1579) 评论(0) 推荐(0) 编辑
摘要:easy_install 跟 pip 都是 Python 的套件管理程式,有了它們,在使用 Python 開發程式的時候會帶來不少方便。easy_install 和 pip 有什麼不一樣?據pip 官網的說法,pip 改善了不少 easy_install 的缺點,如此說來 pip 應該是略勝一籌,不過它還不能夠完全取代對方,因為目前有很多套件還是得用 easy_install 安裝。底下說明如何在 Windows 上安裝與使用 easy_install 與 pip,我假設你系統上已經安裝了 Python。easy_install 的安裝與使用連到底下的網址下載 setuptools,根據你的 阅读全文
posted @ 2014-01-20 15:03 zhepama 阅读(270) 评论(0) 推荐(0) 编辑
摘要:1.G:\servers\Python27\Lib\mimetypes.pyreload(sys)sys.setdefaultencoding('gb18030')2.G:\servers\Python27\Lib\zipfile.py 1116 os.utime(filename, None) st = os.stat(filename) isdir = stat.S_ISDIR(st.st_mode) mtime = time.localtime(st.st_mtime) date_time = mtime[0:6]3.问题:_my... 阅读全文
posted @ 2014-01-05 08:39 zhepama 阅读(262) 评论(0) 推荐(0) 编辑
摘要:Python 2.7 会搜索 Visual Studio 2008.如果你电脑上没有这个版本的话,比如只有:1.Visual Studio 2010,在cmd里面执行:SET VS90COMNTOOLS=%VS100COMNTOOLS%2. Visual Studio 2012 的话:SET VS90COMNTOOLS=%VS110COMNTOOLS%然后就可以正常了如果安装了VS2010或是VS2012可以使用下面的方法解决:If you have Visual Studio 2010 installed, execute >SET VS90COMNTOOLS=%VS100COMNTO 阅读全文
posted @ 2014-01-05 08:06 zhepama 阅读(414) 评论(0) 推荐(0) 编辑
摘要:包括Python,eclipse,jdk,pydev,pip,setuptools,beautifulsoup,pyyaml,nltk,mysqldb的下载安装配置。*************************************************python下载:python-2.7.6.amd64.msihttp://www.python.org/Python 2.7.6 releasedPython 2.7.6 is now available.http://www.python.org/download/releases/2.7.6/Windows X86-64 MSI 阅读全文
posted @ 2014-01-05 06:19 zhepama 阅读(768) 评论(0) 推荐(0) 编辑
摘要:mac lion自带的python是2.7版本的,有点儿低,要使用一些应用的时候还需要3.3以上的,这时可以用以下的方法更新mac自带的python。先去python的官网下载最新的python,并安装好。现在要删除mac自带的python,如下:sudo rm -R /System/Library/Frameworks/Python.framework/Versions/2.7把第一步里安装好的Python目录移到原本系统所持有的目录位置。sudo mv /Library/Frameworks/Python.framework/Versions/3.3 /System/Library/Fra 阅读全文
posted @ 2013-10-22 19:04 zhepama 阅读(846) 评论(0) 推荐(0) 编辑

1
点击右上角即可分享
微信分享提示