python基础
水墨小龙虾
2012-----北京蓝汛
2014-----M1905
2014-----猎豹移动
展开
-
No module named win32api问题解决
Python是没有自带访问windows系统API的库的,需要下载。库的名称叫pywin32,可以从网上直接下载。以下链接地址可以下载:http://sourceforge.net/projects/pywin32/files%2Fpywin32/ (下载适合你的Python版本)运行以下代码如果出现ImportError: No module named win32api 或转载 2015-06-08 00:14:49 · 53877 阅读 · 0 评论 -
python使用multiprocessing进行多进程编程(1)
multiprocessing模块实现了对多进程编程的封装,让我们可以非常方便的使用多进程进行编程。它的使用方法非常类似threading模块。1.创建一个进程import multiprocessingdef worker(): """worker function""" print 'Worker' returnif __name__ == '_翻译 2014-07-10 13:15:08 · 3367 阅读 · 0 评论 -
使用pypi镜像源加速第三方库在线安装
用easy_install和pip来安装第三方库很方便它们的原理其实就是从Python的官方源pypi.python.org/pypi 下载到本地,然后解包安装。不过因为某些原因,访问官方的pypi不稳定,很慢甚至访问不了。跟ubuntu的apt和centos的yum有各个镜像源一样,pypi也有。在国内的强烈推荐豆瓣的源http://pypi.douban.com/simpl转载 2014-05-30 13:38:04 · 854 阅读 · 0 评论 -
python dict.fromkeys()研究
def unique(seq): #return [x for x in my_list if x not in locals()['_[1]']] return {}.fromkeys(seq).keys()dict.fromkeys(seq,val=None) #创建并返回一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值(默认为Non转载 2014-05-30 09:58:29 · 1349 阅读 · 0 评论 -
最佳日志实践
前言日志用来记录用户操作、系统运行状态等,是一个系统的重要组成部分。然而由于日志并非系统核心功能,通常情况下并不受团队的重视。在出现问题需要通过日志来定位时,才发现日志还存在很多问题。日志记录的好坏直接关系到系统出现问题时定位的速度,同时可以通过对日志的观察和分析,提前发现系统可能的风险,避免线上事故的发生。我们在开发和运维NOS(网易对象存储,Netease Object Stora转载 2014-07-02 15:02:15 · 721 阅读 · 0 评论 -
Python中re(正则表达式)模块学习
今天学习了Python中有关正则表达式的知识。关于正则表达式的语法,不作过多解释,网上有许多学习的资料。这里主要介绍Python中常用的正则表达式处理函数。re.match re.match 尝试从字符串的开始匹配一个模式,如:下面的例子匹配第一个单词。import retext = "JGood is a handsome boy, he is cool, c转载 2014-06-06 11:18:06 · 653 阅读 · 0 评论 -
Python 的mock模拟测试介绍
如何不靠耐心测试 通常,我们编写的软件会直接与那些我们称之为“肮脏的”服务交互。通俗地说,服务对我们的应用来说是至关重要的,它们之间的交互是我们设计好的,但这会带来我们不希望的副作用——就是那些在我们自己测试的时候不希望的功能。比如,可能我们正在写一个社交软件并且想测试一下“发布到Facebook的功能”,但是我们不希望每次运行测试集的时候都发布到Facebook上。 Python转载 2014-06-24 17:01:11 · 1914 阅读 · 0 评论 -
python --enumerate用法
python cookbook Recipe 2.5. Counting Lines in a File, 今日发现一个新函数enumerate 。一般情况下对一个列表或数组既要遍历索引又要遍历元素时,会这样写: for i in range (0,len(list)): print i ,list[i] 但是这种转载 2014-06-02 21:38:26 · 660 阅读 · 0 评论 -
python的文件锁使用
python的文件锁目前使用的是fcntl这个库,它实际上是调用的原创 2014-05-20 15:51:21 · 20434 阅读 · 0 评论 -
如何用python最快的获取大文件的最后几行
工作中经常会遇到处理日志文件的问题:为了得到日志的最新状态,我们需要获取日志文件的最后部分行来做判断。那么,这种情况下我们应该怎么做呢? 1)常规方法:从前往后依次读取 步骤:open打开日志文件。 读取文件,获取文件的总行数。 遍历所有行,原创 2014-04-12 22:23:41 · 10593 阅读 · 0 评论 -
python pdb 基础调试
当手边没有IDE,面对着python调试犯愁时,你就可以参考下本文;(pdb 命令调试)参考:http://docs.python.org/library/pdb.html和 (pdb)help首先你选择运行的 pypython -m pdb myscript.py(Pdb) 会自动停在第一行,等待调试,这时你可以看看 帮助 (Pdb) h 说明下这几个关键转载 2014-05-19 13:54:10 · 749 阅读 · 0 评论 -
(Python编程)Pickle对象
Programming Python, 3rd Edition 翻译最新版本见:http://wiki.woodpecker.org.cn/moin/PP3eD 19.4. Pickled Objects19.4. Pickle对象Probably the biggest limitation of DBM keyed files is in wha转载 2014-05-12 17:25:47 · 798 阅读 · 0 评论 -
Python shutil模块
模块学习步骤一:手册介绍shutil -- High-level file operations 是一种高层次的文件操作工具类似于高级API,而且主要强大之处在于其对文件的复制与删除操作更是比较支持好。相关API介绍copyfile(src, dst) 从源src复制到dst中去。当然前提是目标地址是具备可写权转载 2014-04-24 17:33:52 · 621 阅读 · 0 评论 -
python的gzip库使用方法
python gzip原创 2014-04-24 17:30:32 · 1721 阅读 · 0 评论 -
常用正则表达式匹配
匹配中文:[\u4e00-\u9fa5] 英文字母:[a-zA-Z] 数字:[0-9] 匹配中文,英文字母和数字及_: ^[\u4e00-\u9fa5_a-zA-Z0-9]+$同时判断输入长度:[\u4e00-\u9fa5_a-zA-Z0-9_]{4,10}^[\w\u4E00-\u9FA5\uF900-\uFA2D]*$ 1、一个正则表达式,只含有转载 2014-09-12 10:44:47 · 812 阅读 · 0 评论 -
Python中正则表达式对中文的匹配问题
python匹配中文的时候出了问题,要么匹配不到,要么乱码,搜索了一下,成功完成,写了一小段测试代码如下: [python] view plaincopyimport re source = "s2f程序员杂志一2d3程序员杂志二2d3程序员杂志三2d3程序员杂志四2d3" temp = source.decode('utf8') xx=u"([/u4e00-转载 2014-09-12 10:46:45 · 1216 阅读 · 0 评论 -
python super()
一、问题的发现与提出 在Python类的方法(method)中,要调用父类的某个方法,在Python 2.2以前,通常的写法如代码段1: 代码段1:class A: def __init__(self): print "enter A" print "leave A" class B(A): def __init__(self): print转载 2014-08-18 00:02:32 · 559 阅读 · 0 评论 -
Unable to find vcvarsall.bat解决办法
先前已经有一篇关于Scrapy的介绍了(Scrapy的架构),今天这篇文章是将怎么在Windows上安装Scrapy。在安装Scrapy前首先需要确定的是已经安装好了Python(目前Scrapy只吃Python2.5,Python2.6和Python2.7)。官方文档中介绍了三种方法进行安装,我采用的是使用 easy_install 进行安装,首先是下载Windows版本的setupto转载 2015-06-07 01:44:12 · 1647 阅读 · 0 评论 -
RPDB-让PDB(Python调试工具)支持远程调试功能
软件已更新,最新请查看:https://code.google.com/p/stonelab/wiki/pdbx软件介绍rpdb扩展了pdb,让pdb支持远程调试功能。使用了rpdb的python脚本在远程启动,本地通过telnet方式连接上rpdb提供的调试端口,接下来的操作和本地完全一致。使用说明下载wget https://stonelab.googlec转载 2015-05-19 14:51:43 · 4710 阅读 · 0 评论 -
字符,字节和编码
1. 编码问题的由来,相关概念的理解1.1 字符与编码的发展从计算机对多国语言的支持角度看,大致可以分为三个阶段: 系统内码说明系统阶段一ASCII计算机刚开始只支持英语,其它语言不能够在计算机上存储和显示。英文 DOS阶段二ANSI编码(本地化)为使计算机支持更转载 2015-03-22 17:48:27 · 520 阅读 · 0 评论 -
Python函数式编程指南(三):迭代器
3. 迭代器 3.1. 迭代器(Iterator)概述 迭代器是访问集合内元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素都被访问一遍后结束。 迭代器不能回退,只能往前进行迭代。这并不是什么很大的缺点,因为人们几乎不需要在迭代途中进行回退操作。 迭代器也不是线程安全的,在多线程环境中对可变集合使用迭代器是一个危险的操作。但如果小心谨慎,或者干脆贯彻函数式思想坚持转载 2015-02-18 14:19:59 · 604 阅读 · 0 评论 -
在python里递归最多达到多少次
在python里递归最多达到多少次?因为在跑程序的时候,次数有时多有时少,以前没有想过这个问题。那就自己动手在验证验证, 代码如下:def recursion(n): if(n =0): return printn recursion(n- 1) if __name__ =="_转载 2014-12-29 21:10:44 · 6065 阅读 · 0 评论 -
Python中*args 和**kwargs的用法
当函数的参数不确定时,可以使用*args 和**kwargs,*args 没有key值,**kwargs有key值。还是直接来代码吧,废话少说[python] view plaincopyprint?def fun_var_args(farg, *args): print "arg:", farg for value in args:转载 2014-10-04 23:34:00 · 618 阅读 · 0 评论 -
解决mysqldb查询大量数据导致内存使用过高的问题
python mysqldb原创 2014-11-17 14:58:30 · 8376 阅读 · 1 评论 -
python发送包含html、图片、附件和链接的邮件
1.smtplib模块的使用 smtplib库用来发送邮件。需要用到的函数如下:连接到SMTP服务器,参数为SMTP主机和端口: SMTP.connect([host[,port]]) 登录SMTP服务器,参数为邮箱用户名和密码: SMTP.login(user,password) 发送邮件。msg表示邮件内容: SMTP.sendmail(from_addr, to_转载 2014-10-09 18:28:22 · 1601 阅读 · 0 评论 -
遍历python字典几种方法
脚本:#!/usr/bin/python dict={"a":"apple","b":"banana","o":"orange"} print "##########dict######################" for i in dict: print "dict[%s]=" % i,dict[i] print "###########items#########转载 2014-10-08 17:13:50 · 1069 阅读 · 0 评论 -
python的ftplib模块
Python中的ftplib模块Python中默认安装的ftplib模块定义了FTP类,其中函数有限,可用来实现简单的ftp客户端,用于上传或下载文件FTP的工作流程及基本操作可参考协议RFC959ftp登陆连接from ftplib import FTP #加载ftp模块ftp=FTP() #设置变量ftp.set_debuglevel(2) #打开调试级转载 2014-09-24 20:26:44 · 961 阅读 · 0 评论 -
linux之sort用法
sort命令是帮我们依据不同的数据类型进行排序,其语法及常用参数格式: sort [-bcfMnrtk][源文件][-o 输出文件] 补充说明:sort可针对文本文件的内容,以行为单位来排序。参 数: -b 忽略每行前面开始出的空格字符。 -c 检查文件是否已经按照顺序排序。 -f 排序时,忽略大小写字母。 -M 将前面3个字母依照月份的缩写转载 2014-09-26 11:52:32 · 572 阅读 · 0 评论 -
Python使用struct处理二进制(pack和unpack用法)
[转]Python使用struct处理二进制(pack和unpack用法)Leave a reply转载自:http://www.cnblogs.com/gala/archive/2011/09/22/2184801.html这篇文章写的很好,所以无耻的转了。。有的时候需要用python处理二进制数据,比如,存取文件,socket操作时.这时候,可以使用py转载 2014-09-24 18:24:20 · 845 阅读 · 0 评论 -
后台运行python程序 遇到缓冲区问题
From: http://www.iteye.com/topic/867446环境:linux 一段执行时间很长的程序(用python做hive客户端执行mapreduce) 在linux后台执行,把结果输出到某文件: Python代码 python xxx.py > log.log& 遇到的问转载 2014-09-12 17:26:30 · 1082 阅读 · 1 评论 -
Python的subprocess子进程和管道进行交互
在很久以前,我写了一个系列,Python和C和C++的交互,如下http://blog.csdn.net/marising/archive/2008/08/28/2845339.aspx目的是解决Python和C/C++的互操作性的问题,假如性能瓶颈的地方用C来写,而一些外围工作用Python来完成,岂不是完美的结合。今天发现了更方便的方式,就是用subprocess模块,创建子进程,转载 2014-04-08 23:24:38 · 1511 阅读 · 0 评论 -
python的logging.config使用详解
import logging logger = logging.getLogger() # 生成一个日志对象 # logfile是一个全局变量,它就是一个文件名,如:'crawl.log' logfile = 'test.log' # 生成一个Handler。logging支持许多Handler, # 象FileHandler转载 2012-09-12 10:49:53 · 2276 阅读 · 0 评论 -
cx_Oracle库导入失败引起crontab中python程序运行失败,并且无错误提示
cx_Oracle python crontab原创 2014-03-26 13:12:02 · 2157 阅读 · 1 评论 -
Python的学习(二十一)----Python的静态变量
一直以来用python做测试,可能没有很深入的了解,前段时间在论坛里面有人提问说,class foo():member1member2...self.member1foo.member2其中的两个成员member1, member2有什么区别。。。这才知道python中也有自己的全局静态变量。其实例的属性是实例的,如上class中的member1,对它进行+/-操作转载 2013-11-09 12:25:09 · 896 阅读 · 0 评论 -
python关于文件的操作
总是记不住API。昨晚写的时候用到了这些,但是没记住,于是就索性整理一下吧:python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()返回指定目录下的所有文件和目录名:os.listdir()函数用来删除一个文件:os.remove()删除多个目录:os.removed转载 2013-11-07 00:10:06 · 967 阅读 · 0 评论 -
python 函数参数的传递(参数带星号的说明)
python中函数参数的传递是通过赋值来传递的。函数参数的使用又有俩个方面值得注意:1.函数参数是如何定义的 2.在调用函数的过程中参数是如何被解析先看第一个问题,在python中函数参数的定义主要有四种方式:1.F(arg1,arg2,...)这 是最常见的定义方式,一个函数可以定义任意个参数,每个参数间用逗号分割,用这种方式定义的函数在调用的的时候也必须在函数名后的小括号里提供个数转载 2013-11-09 12:26:51 · 849 阅读 · 0 评论 -
python操作Excel读写--使用xlrd
一、安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境。二、使用介绍 1、导入模块 import xlrd 2、打开Excel文件读取数据 data = xlrd.open_workbook('excelFile.xls')转载 2013-11-09 21:42:42 · 1125 阅读 · 0 评论 -
用Python直接写UTF-8文本文件
当我们这样建立文件时f = file('x1.txt', 'w')f.write(u'中文')f.colse()直接结果应该是类似 f.write(u'中文')UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-16: ordinal not in range(12转载 2013-11-19 18:32:55 · 1121 阅读 · 0 评论 -
python strip()函数 介绍
函数原型声明:s为字符串,rm为要删除的字符序列s.strip(rm) 删除s字符串中开头、结尾处,位于 rm删除序列的字符s.lstrip(rm) 删除s字符串中开头处,位于 rm删除序列的字符s.rstrip(rm) 删除s字符串中结尾处,位于 rm删除序列的字符注意:1. 当rm为空时,默认删除空白符(包括'\n', '\r',转载 2013-11-09 14:40:07 · 2662 阅读 · 0 评论 -
python多线程,限制线程数
#encoding:utf8import threadingimport timedata = 0def func(sleeptime): global data print threading.currentThread().getName() time.sleep(sleeptime)threads = []for i in range(0,40):转载 2013-11-09 19:08:11 · 9682 阅读 · 0 评论