python
文章平均质量分 53
swiftshow
这个作者很懒,什么都没留下…
展开
-
python logging模块
<br /> <br />logging.getLogger([name]):返回一个logger对象,如果没有指定名字将返回root logger<br />logging.debug()、logging.info()、logging.warning()、logging.error()、logging.critical():设定root logger的日志级别<br />logging.basicConfig():用默认Formatter为日志系统建立一个StreamHandler,设置基础配置并加到ro原创 2011-05-12 14:17:00 · 654 阅读 · 0 评论 -
python多线程multiprocessing使用
使用python multiprocessing模块多线程创建空文件 #!/usr/bin/env python #-*- coding: UTF-8 -*-import osimport multiprocessingimport sysdef run(srcpath): if os.path.exists(srcpath): for i in xra原创 2012-11-07 17:12:53 · 1130 阅读 · 0 评论 -
python读取文件:固定大小内容
file = open('test.log', 'r')sizehint = 209715200 # 200Mposition = 0lines = file.readlines(sizehint)while not file.tell() - position < 0: position = file.tell() lines = file.readlin原创 2012-11-21 14:44:55 · 2326 阅读 · 1 评论 -
python修改Linux文件目录权限
os.chmod()方法 此方法通过数值模式更新路径或文件权限。该模式可采取下列值或按位或运算组合之一:stat.S_ISUID: Set user ID on execution.stat.S_ISGID: Set group ID on execution.stat.S_ENFMT: Record locking enforced.stat.S_ISVTX: Save text ima转载 2012-08-10 15:00:18 · 3052 阅读 · 0 评论 -
python处理url中文问题
今天做web的时候,前台URL提交参数中有中文,一开始以为是后台转码问题用unicode(param,"utf-8")试了一下不行,得到的还是乱码,问老王python大牛大牛告诉我用urllib.urldecode转码,试了一下还是不行,因为别的页面也有中文提交的情况,别的页面后台用unicode(param,"utf-8")就搞定了,为什么这个不行呢,仔细一想这个提交是在JS中提原创 2012-12-19 17:58:41 · 1539 阅读 · 0 评论 -
python2.6使用mysql包出现的一些问题以及解决办法
在windows下面默认安装的python2.6再安装MySQLdb会遇到很多神奇的问题,如缺少库,编译错误等例如python2.5出现import MySQLdbTraceback (most recent call last): File "", line 1, in File "C:\Python25\Lib\site-packages\MySQLdb\__init__.转载 2013-01-30 11:16:21 · 545 阅读 · 0 评论 -
使用tornado运行web程序错误解决方法:IOError: [Errno 5] Input/output error
原因: server.serve_forever()启动后,任何一个访问,都会输出访问历史记录: localhost - - [07/Sep/2011 15:21:24] "GET / HTTP/1.1" 200 - 这个log的输出,需要输出的载体,这里是依赖shell。如果此时退出了shell,log输出找不到地方,就会报出以上错误。 而且很诡异的是,这个log我怀疑是以err原创 2013-03-04 19:04:53 · 4668 阅读 · 0 评论 -
python操作protobuf
1.windows下安装 1.从官网下载源码包解压进入vsproject,使用visual studio 打开解决方案,选择protoc生成解决方案会在Debug目录下生成protoc.exe 2.不用源码包安装,可以直接在官网下载protoc.exe 3.设置环境变量D:\ 4.进入python目录 执行python setup.py build 然后执行pyth原创 2013-03-04 11:02:14 · 10552 阅读 · 0 评论 -
python mysql 乱码问题总结
用python连接mysql的时候遇到乱码问题解决方案从网上搜到的解决方法:1.Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8), 同时文件保存的格式也应该是utf82.MySQL数据库charset=utf-8 ,数据库的编码必须是utf83.python连接MySQL时加上编码参数 conn = MySQLdb.Connection(hos原创 2013-02-28 16:03:15 · 639 阅读 · 0 评论 -
python操作csv
def readCsvFile(filePath): param_list = getCsvParam(filePath) print 'param_list', param_list csv_dict = {} filedNames = param_list[-1] print 'filedNames', filedNames with open原创 2013-04-02 17:04:28 · 1142 阅读 · 0 评论 -
python 单例模式
单例模式:保证一个类仅有一个实例,并提供一个访问他的全局访问点。 实现某个类只有一个实例的途径:1,让一个全局变量使得一个对象被访问,但是他不能防止外部实例化多个对象。2,让类自身保存他的唯一实例,这个类可以保证没有其他实例可以被创建。多线程时的单例模式:加锁-双重锁定饿汉式单例类:在类被加载时就将自己实例化(静态初始化)。其优点是躲避了多线程访问的转载 2013-04-02 17:30:26 · 811 阅读 · 0 评论 -
python安装gevent
Gevent是一个基于greenlet的Python的并发框架,以微线程greenlet为核心,使用了epoll事件监听机制以及诸多其他优化而变得高效。最近在研究可是安装遇到各种各样蛋疼的问题1.python版本是2.764位的,可是Gevent没有Windows下的64位的,就把源码包下载下来了,先执行 python fetch_libevent.py python原创 2013-03-04 18:24:05 · 4638 阅读 · 0 评论 -
python uuid模块
UUID是128位的全局唯一标识符,通常由32字节的字符串表示。 它可以保证时间和空间的唯一性,也称为GUID,全称为: UUID —— Universally Unique IDentifier Python 中叫 UUID GUID —— Globally Unique IDentifier C# 中叫 GU转载 2013-04-16 17:26:14 · 627 阅读 · 0 评论 -
python 16进制和10进制转换
调用Python内置int()函数把该字串转为数字。以下为在Python解释器编程环境下的操作示范:把十六进制的字串转为十进制数字:>>> print int('ff', 16)255把十进制数字转换为以十六进制表示之字串,可调用内置的hex()函数:>>> print hex(255)0xff调用BinAscii模块其中的b2a_hex()转载 2013-04-25 19:42:01 · 1716 阅读 · 0 评论 -
Ubuntu中用MySQL-Client连接XAMPP中的MySQL-Server
首先在Ubuntu安装MySQL-Client:sudo apt-get install mysql-client启动XAMPP中的mysql:sudo /opt/lampp/lampp startmysql此时如果直接连接的话会报错:Can’t connect to local MySQL server through socket ‘/var/run/m转载 2013-07-22 11:56:23 · 1114 阅读 · 0 评论 -
svn 解决You don't have permission to access /svn/ on this server
用./htpasswd 添加用户后,设置相应的权限,使用浏览器访问提示You don't have permission to access /svn/ on this server检查配置文件也没有问题,查看apache的error.log日志发现一条错误提示:Faied to load the AuthzSVNAccessFIle :Section header expected原创 2013-07-22 15:05:28 · 31800 阅读 · 1 评论 -
ubuntu下中文乱码解决方案(全)
1、ibus输入法Ubuntu 系统安装后已经自带了ibus输入法,在英语环境下默认不启动。配置ibus自动启动可以在ubuntu系统菜单上选择System --- Preferences --- Startup Applications,在该窗口中增加一个程序:Name: ibus-daemonCommand: ibus-daemon -d -x -ribus默认提供的中转载 2013-07-22 15:25:03 · 786 阅读 · 0 评论 -
ubuntu下安装gevent和mysql-python
sudo apt-get install python-devsudo apt-get install libevent-dev sudo apt-get install python-setuptoolssudo easy_install greenletsudo easy_install gevent转载 2013-07-22 11:19:53 · 1550 阅读 · 0 评论 -
python获取全部进程的CPU、内存使用率
import psutil,timedef getProcessInfo(p): """取出指定进程占用的进程名,进程ID,进程实际内存, 虚拟内存,CPU使用率 """ try: cpu = int(p.get_cpu_percent(interval=0)) rss, vms = p.get_memory_info()转载 2012-10-25 09:31:55 · 11688 阅读 · 0 评论 -
python os模块API记录
python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()返回指定目录下的所有文件和目录名:os.listdir()函数用来删除一个文件:os.remove()删除多个目录:os.removedirs(r“c:\python”)检验给出的路径是否是一个文件:os.pat转载 2012-10-18 17:45:25 · 1395 阅读 · 0 评论 -
python 的列表遍历删除
python的列表list可以用for循环进行遍历,实际开发中发现一个问题,就是遍历的时候删除会出错,例如l = [1,2,3,4]for i in l: if i != 4: l.remove(i)print l这几句话本来意图是想清空列表l,只留元素4,但是实际跑起来并不是那个结果。再看下面,利用index来遍历删除列表l转载 2012-03-17 14:35:23 · 534 阅读 · 0 评论 -
python整理二十五——谈谈浅拷贝与深拷贝
python中的浅拷贝深拷贝的概念和C++里面的浅拷贝深拷贝是一样的。所谓浅拷贝就是对引用的拷贝,所谓深拷贝就是对对象的资源的拷贝,边看例子边解释: #1[python] view plaincopy>>> ls1 = [1,2,3,4,5] >>> c_ls1 = ls1 >>> c_ls1[-1] = -1转载 2012-03-17 15:14:22 · 1167 阅读 · 0 评论 -
python 连接oracle
1、首先下载驱动(cx_Oracle),要注意一下版本,根据你的情况加以选择。2、安装执行exe安装程序就可以了,它会copy一个cx_Oracle.pyd到{PYTHON_HOME}\Lib\site-packages目录下。3、执行一段测试程序 import cx_Oraclecon = cx_Oracle.connect( "x转载 2012-03-20 11:22:12 · 1740 阅读 · 0 评论 -
Python 字典
字典(Dictionary)是一种映射结构的数据类型,由无序的“键-值对”组成。字典的键必须是不可改变的类型,如:字符串,数字,tuple;值可以为任何python数据类型。1、新建字典 >>> dict1={} #建立一个空字典2、增加字典元素:两种方法 >>> dict1['a']=1 #第一种 #第二种:setdefault方法转载 2012-03-20 12:54:41 · 494 阅读 · 0 评论 -
python插入排序算法
# coding=gbk# code by wangrui#CSSAR Center of Data Net #插入排序第一个版本def Insert_Sort(array): for i in range(len(array)): temp = array[i] j = i-1原创 2012-03-20 12:59:10 · 538 阅读 · 0 评论 -
python中list去除重复
在一篇很牛的介绍python中list去重的博客(http://www.peterbe.com/plog/uniqifiers-benchmark )中收集到的:from random import shuffle, randint import re from sets import Set def f1(seq): # Raymond Hettinger #转载 2012-03-20 11:20:33 · 1129 阅读 · 0 评论 -
python time模块
import timeprint time.time()输出的结果是:1279578704.6725271time.localtime(time.time())用time.localtime()方法,作用是格式化时间戳为本地的时间。输出的结果是:time.struct_time(tm_year=2010, tm_mon=7, tm_mday=19, tm_hour=转载 2012-03-20 12:00:21 · 534 阅读 · 0 评论 -
Python ini文件操作
假如存在一个test.ini文件,内容为:[Default]String=Test读取ini文件# -*- coding: cp936 -*- import ConfigParserconfig = ConfigParser.ConfigParser()config.readfp(open('test.ini'))print config.get("Defaul原创 2012-03-20 11:24:20 · 963 阅读 · 0 评论 -
Python 函数封装
自己在项目中用到的几个函数封装1.北京时间转换为世界时def BTC_to_UTC(btc_time): utc_struct = time.mktime([int(btc_time[0:4]),int(btc_time[4:6]),\ int(btc_time[6:8]),int(btc_time[8:10]),原创 2012-03-22 15:39:34 · 2095 阅读 · 0 评论 -
Python 对Oracle的操作
简单的封装def Oracle_Exec(SqlStr): "Execute oracle command" conn = cx_Oracle.connect(DB_UserName, DB_UserPwd, DB_ConnectStr) cursor = conn.cursor() try: cursor.execute(SqlStr)原创 2012-03-22 15:40:43 · 1876 阅读 · 0 评论 -
Python 扫描目录
def ScanDir(file_list,proc_parent_path,MD5_list,err_list): for root,dirs,files in os.walk(proc_parent_path): for file_name in files: file_path = os.path.join(root + os.sep + fi原创 2012-03-22 15:33:22 · 1011 阅读 · 0 评论 -
Python 二分法查找
1.如果找到该值就返回2.如果找不到该值就返回该值的上一个Index和下一个Index3.小于List[0] 返回04.大于len(List)返回该List[-1]def BinarySearch(keyTime,List): low = 0 high = len(List) - 1 middle = 0 while(low <原创 2012-03-22 15:17:50 · 4114 阅读 · 0 评论 -
python 调用Linux系统命令笔记
在做项目中的时候用到的几个技术点:1.cmdInfo = commands.getstatusoutput("useradd -g ftp -d %s -s /sbin/nologin %s" %(ftpDir, ftpUser)) 返回命令行执行结果 元组()2.添加系统用户os.system("echo '%s' | passwd --stdin %s" %(ftpPass原创 2012-07-17 15:36:34 · 2665 阅读 · 0 评论 -
python 使用SAX解析器验证xml文件格式是否完好
#!/usr/bin/env python #-*- coding: UTF-8 -*- #coder:wangrui#验证xml文件格式是否正确from xml.sax.handler import ContentHandlerfrom xml.sax import make_parserdef parseFile(fileName): parser = make_pa原创 2012-08-14 16:40:28 · 1107 阅读 · 0 评论 -
python对xml封装 dom处理
#!/usr/bin/python#coding=utf8from xml.dom import minidomclass ChildIndexOutofBoundsException(Exception): passclass DOMXmlUtil: def __init__(self): pass def readXmlString(self,data): self.do转载 2012-08-14 17:37:36 · 1185 阅读 · 2 评论 -
python获取本地的IP地址及mac地址
Windows下2种方法:1.使用拨号上网的话,一般都有一个本地ip和一个外网ip,使用python可以很容易的得到这两个ip使用gethostbyname和gethostbyname_ex两个函数可以实现 import socketlocalIP = socket.gethostbyname(socket.gethostname())#这个得到本地ip原创 2012-08-10 14:57:46 · 2994 阅读 · 0 评论 -
Apache配置虚拟目录
先找到Apache\conf\httpd.conf配制文件找到节点在其后面添加其它的虚拟目录节点:如mantisAlias /test/ "D:/test/" Options Indexes FollowSymLinks MultiViews AllowOverride all Order allow,deny Allow f转载 2013-07-23 17:04:14 · 685 阅读 · 0 评论