摘要:
几个常用的场景import stringalphas=string.letters+'_' #字母加_nums=string.digits #数字常用在输入字符判断msg=string.join(("From:%s" % FROM,"TO:%s" % TO,"Subject:%s" % SUBJEC... 阅读全文
摘要:
Date 2012/02/09/Sysem evnServer :192.168.1.110 CentOS release 5.6 (Final)参考:http://trac.edgewall.org/wiki/0.12/TracInstallhttp://hi.baidu.com/jackchen0227/blog/item/d3e0e1536ff45e6f8435247b.html一、规划1、svn根目录# mkdir -p /data/svn2、svn配置帐号密码等#mkdir /etc/svnSVN用户帐号: /etc/svn/account#trac账号同svn账号SVN用户权限设置 阅读全文
摘要:
使用supervisor来管理进程,另外还设有screen也可以以一、supervisor管理进程1、安装# easy_install supervisor2、常用功能*nix系统管理员常用supervisord和supervisorctl、>>> import supervisor1)、产生supervisord配置文件可以通过简单的命令echo_supervisord_conf输出supervisord.conf的内容产生配置文件# echo_supervisord_conf > /etc/supervisord.conf2)、写一个简单进程 #vim daemon 阅读全文
摘要:
setuptool管理python相关的包一、介绍setuptool管理python相关的包的工具。这些包是zip格式发布,但是后缀一般都是.eggsetuptool能解决python包的依赖关系setuptool安装的包默认安装到/usr/local/lib/pythonX.X/site-packages/目录下下载包默认到http://pypi.python.org/pypi下载pypi为Python PackageIndex二、安装setuptool工具1、rhel/centos#yum -y install python-setuptools2、freebsd#cd /usr/port 阅读全文
摘要:
数据持久性简单序列化单纯滴保存数据到硬盘,而不保存数据之间的关系的过程称为“简单序列化”。一、picklePython高级标准工具,处理一般对象存储(如pickle模块),处理文件中打包的二进制数据(如struct模块)1、写入数据pickle_dump(数据,文件)>>> import pickl... 阅读全文
摘要:
一、filecmp模块 文件比较1、比较两个文件filecmp.cmp()# echo 0 >/tmp/file1# echo 1 > /tmp/file2# echo 0 > /tmp/file3>>> filecmp.cmp('/tmp/file1','/tmp/file2') False>>>... 阅读全文
摘要:
对于一般的程序参数可使用sys.argv,对于复杂的程序参数可以使用optparse一、简单演示实例1#!/usr/bin/env pythonimport optparsedef main(): p=optparse.OptionParser() p.add_option('--sysadmin','-s',default='diege') options,arguments=p.parse_args() #options和赋值给选项的值构成选项字典的key和value,注value和arguments没有关系 print 'Hello 阅读全文
摘要:
http://www.cnblogs.com/thinkingfor/archive/2010/09/13/1824766.htmlmd5模块python提供了一个进行hash加密的模块:hashlib 下面主要记录下其中的md5加密方式 >>> import hashlib >>> m = hashlib.md5() >>> m.update("Nobody inspects") >>> m.update(" the spammish repetition") >>&g 阅读全文
摘要:
守护进程三个特征:在后台运行,与启动它的进程脱离,无须控制终端。>>> def run(program, *args):... pid = os.fork()... if pid==0:#pid==0为在子进程内 在子进程内,执行(等同于 not pid (not 0))... os.execvp(program, (program,) + args)... return os.wait()... >>> run("python", "hello.py")(1874, 0)关于fork函数:pid=os.fork()f 阅读全文
摘要:
线程共享全局状态,进程完全独立。线程局限在一个处理器,线程可以发挥多个处理器的资源.没有找到processing模块只找到multiprocessing#!/usr/bin/env pythonfrom multiprocessing import Process,Queueimport timeq=Queue()def f(q): x=q.get() print "Process number %s,sleeps for %s second" % (x,x) time.sleep(x) print "Process number %s ... 阅读全文
摘要:
参考网络以及python书籍整理一、Python threading三种调用方式介绍:Thread 是threading模块中最重要的类之一,可以使用它来创建线程。第一种方式:创建一个threading.Thread()的实例对象,给它一个函数。在它的初始化函数(__init__)中将可调用对象作为参数传入第二种方式:创建一个threading.Thread的实例,传给它一个可调用类对象,类中使用__call__()函数调用函数第三种方式:是通过继承Thread类,重写它的run方法;第一种和第三种常用。实例可参考:http://tuoxie174.blog.51cto.com/1446064 阅读全文
摘要:
一、pyMongo1、安装非标准库需要安装#easy_install pyMongo2、连接使用pymongo.connecttion.Connection类与MongoDB服务器连接from pymongo Connectiondb=Connection('localhost',27017).apachelog #这里创建连接和使用库写在一起来了>>> connection=pymongo.Connection('localhost',27017) #创建连接>>> db = connection.test_database 阅读全文
摘要:
MySQLdb for Python使用指南/Python的数据库操作 # -*- coding: utf-8 -*- #mysqldb import time, MySQLdb #连接 conn=MySQLdb.connect(host="localhost",user="root",passwd="",db="test",charset="utf8") cursor = conn.cursor() #写入 sql = "insert into user(nam... 阅读全文
摘要:
#!/usr/bin/env pythonimport subprocessimport smtplibimport stringp=subprocess.Popen("df -h",shell=True,stdout=subprocess.PIPE)MSG=p.stdout.read()FROM="root@localhost"TO="root@localhost"SUBJECT="DISK Usage Report"msg=string.join(("From:%s" % FROM,&quo 阅读全文
摘要:
ftplib模块定义了FTP类和一些方法,用以进行客户端的ftp编程,下面为一个客户端下载的例子:http://blog.csdn.net/thedjangobook/article/details/6536225#!/usr/bin/python#-*- coding:utf-8 -*-from ftplib import FTP #加载ftp模块ftp=FTP() #设置变量ftp.set_debuglevel(2) #打开调试级别2,显示详细信息ftp.connect("IP","port") #连接的ftp sever和端... 阅读全文
摘要:
参考列表http://blog.csdn.net/five3/article/details/7078951http://docs.python.org/library/httplib.html一、httplibhttplib是一个相对底层的http请求模块,其上有专门的包装模块,如urllib内建... 阅读全文
摘要:
正则表达式模块 re参考:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html1、两种模式python中有两种正则表达式,上面一种是未编译模式,直接使用re模块中的函数。编译使用方法未编译模式>>> import re >>> re_string="{{(.*?)}}">>> some_string="this is a string with {{word}} embedded in {{curly brackets}} to show an 阅读全文