自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mr.Yan的专栏

Stay hungry, stay foolish.

  • 博客(51)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

转载 python发送http请求之requests模块

python的requests模块比urllib、urllib2模块的接口更简洁。以下转自:http://blog.csdn.net/iloveyin/article/details/21444613迫不及待了吗?本页内容为如何入门Requests提供了很好的指引。其假设你已经安装了Requests。如果还没有, 去 安装 一节看看吧。首先,确认一下:Reque

2015-04-29 16:58:32 23686 2

转载 Python使用xlwt写excel并设置写入格式

关于写excel的格式控制,比如颜色等等import xlwtfrom datetime import datetime  font0 = xlwt.Font()font0.name = 'Times New Roman'font0.colour_index = 2font0.bold = True  style0 = xlwt.XFStyle()s

2015-04-28 23:48:51 33976

原创 Python命名规范参考

Python中类、模块、变量等的命名规则 1)命名格式 如下图所示:  2)用 has 或 is 前缀命名布尔元素 如:is_connect = True has_member = False 参考文献:http://wenku.baidu.com/link?url=h0IHsrH_nLZcOi-AN-NJd9lsFFsLshgc4YeOnAH7rQ

2015-04-27 23:49:46 688

原创 二分查找算法之python实现

二分查找也叫折半查找,通过不断比较目标元素与一个有序序列(注意是有序序列)中间元素的值,达到每次查找都能排除一半元素的一种算法。python实现如下:#!/usr/bin/python# -*- coding: utf-8 -*-import randomunsortedList=[]# generate an unsorted listdef generateUnsort

2015-04-23 15:01:09 1350

原创 python实现各种排序算法

Python有自己的列表排序方法,就是sorted函数和sort()函数,区别是:sorted函数返回一个有序的序列副本,而sort()函数直接在当前列表进行排序,不创建副本,故sort()函数返回None。一般来说,返回None表示是在 原对象上进行操作,而返回排序的结果则表示创建了一个副本。代码如下:unsortedList=[]unsortedList=[55, 91, 63,

2015-04-21 22:34:08 5511

转载 大型网站系统架构演变之路

这篇文章对于想了解大型网站是怎样一步一步架构起来的人说,还是挺好的,特转载,原文:http://www.uml.org.cn/zjjs/201306263.asp之前我简单向大家介绍了各个知名大型网站的架构,亿万用户网站MySpace的成功秘密、Flickr架构、YouTube网站架构、PlentyOfFish 网站架构学习、WikiPedia技术架构学习笔记。这几个都很典型,我们可以

2015-04-18 14:36:42 1334

转载 js验证表单大全

转载,不保证正确性,为了自己记录,以后查看之用。/*不错的JS验证~~~~~~~~~~~~~~~~~~~~~~~~~ 用途:校验ip地址的格式 输入:strIP:ip地址 返回:如果通过验证返回true,否则返回false; */ function isIP(strIP) { if (isNull(strIP)) return false; var re=/^(

2015-04-18 14:10:19 471

转载 典型WEB UI布局以及设计命名规范

1.    Container “container“ 就是将页面中的所有元素包在一起的部分,这部分还可以命名为: “wrapper“, “wrap“, “page“. 2.    Header “header” 是网站页面的头部区域,一般来讲,它包含网站的logo和一些其他元素。这部分还可以命名为:“page-header” (或 pageHeader). 3.    Navba

2015-04-18 14:04:47 3622

原创 Python字符串操作

Python的字符串是不可变的,但我们可以操作一个字符串以形成新的字符串。一、字符串中删除一个子串虽然Python没有直接提供删除子串的操作,但replace可以实现:str1="abc dfr".replace(' ','')print str1还有一个translate方法也可以实现删除,如下:str1="abcdddfr".translate(None,'ddd')p

2015-04-18 13:25:10 579

原创 python中的下划线

1,以一个下划线开头的命名 ,如_getFile这个被常用于模块中,在一个模块中以单下划线开头的变量和函数被默认当作内部函数,如果使用 from a_module import * 导入时,这部分变量和函数不会被导入。不过值得注意的是,如果使用 import a_module 这样导入模块,仍然可以用 a_module._some_var 这样的形式访问到这样的对象。这种变量叫做“保护变量

2015-04-17 16:54:02 879

转载 python访问限制

在Class内部,可以有属性和方法,而外部代码可以通过直接调用实例变量的方法来操作数据,这样,就隐藏了内部的复杂逻辑。但是,从前面Student类的定义来看,外部代码还是可以自由地修改一个实例的name、score属性:>>> bart = Student('Bart Simpson', 98)>>> bart.score98>>> bart.score = 59>>> bar

2015-04-17 16:07:10 697

转载 python内建模块之itertools

Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数。首先,我们看看itertools提供的几个“无限”迭代器:>>> import itertools>>> natuals = itertools.count(1)>>> for n in natuals:... print n...123...Try因为count()会创建

2015-04-14 16:17:03 742

转载 python内建模块之hashlib

摘要算法简介Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。什么是摘要算法呢?摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。举个例子,你写了一篇文章,内容是一个字符串'how to use python hashlib - by Michael',并附上这篇文章的摘要是

2015-04-14 16:07:52 749

转载 python内建模块之collections

collections是Python内建的一个集合模块,提供了许多有用的集合类。namedtuple我们知道tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成:>>> p = (1, 2)但是,看到(1, 2),很难看出这个tuple是用来表示一个坐标的。定义一个class又小题大做了,这时,namedtuple就派上了用场:>>> from

2015-04-14 15:41:44 671

转载 python再议正则表达式

字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在。比如判断一个字符串是否是合法的Email地址,虽然可以编程提取@前后的子串,再分别判断是否是单词和域名,但这样做不但麻烦,而且代码难以复用。正则表达式是一种用来匹配字符串的强有力的武器。它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的

2015-04-14 15:03:47 829

转载 python多线程

多任务可以由多进程完成,也可以由一个进程内的多线程完成。我们前面提到了进程是由若干线程组成的,一个进程至少有一个线程。由于线程是操作系统直接支持的执行单元,因此,高级语言通常都内置多线程的支持,Python也不例外,并且,Python的线程是真正的Posix Thread,而不是模拟出来的线程。Python的标准库提供了两个模块:thread和threading,threa

2015-04-14 11:30:42 524

转载 python多进程

要让Python程序实现多进程(multiprocessing),我们先了解操作系统的相关知识。Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进程和子进程内返回。子进程永远返回0,而父进程返回子进程的ID。

2015-04-14 11:01:24 1033 1

转载 python序列化

在程序运行的过程中,所有的变量都是在内存中,比如,定义一个dict:d = dict(name='Bob', age=20, score=88)可以随时修改变量,比如把name改成'Bill',但是一旦程序结束,变量所占用的内存就被操作系统全部回收。如果没有把修改后的'Bill'存储到磁盘上,下次重新运行程序,变量又被初始化为'Bob'。我们把变量从内存中变成可存储或传输的过

2015-04-13 17:53:29 866

原创 Python写文件后要注意关闭文件

当我们写文件时,操作系统往往不会立刻把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。只有调用close()方法时,操作系统才保证把没有写入的数据全部写入磁盘。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了。所以,还是用with语句来得保险:with open('/Users/michael/test.txt', 'w') as f: f.writ

2015-04-13 00:09:45 14031 1

转载 Python单元测试

如果你听说过“测试驱动开发”(TDD:Test-Driven Development),单元测试就不陌生。单元测试是用来对一个模块、一个函数或者一个类来进行正确性检验的测试工作。比如对函数abs(),我们可以编写出以下几个测试用例:输入正数,比如1、1.2、0.99,期待返回值与输入相同;输入负数,比如-1、-1.2、-0.99,期待返回值与输入相反;输

2015-04-12 19:32:04 678

原创 Python性能优化小建议

1. 尽量使用局部变量     Python 检索局部变量比检索全局变量快. 这意味着,尽量避免 "global" 关键字. 2. 尽量使用 "in"       使用 "in" 关键字. 简洁而快速. for key in sequence: print key3. 当有大量字符串连续相加时使用String的join()方法而不是使用“+”号      对于

2015-04-12 15:06:10 811

原创 Python的UnboundLocalError: local variable 'xxx' referenced before assignment

我们编写Python的时候,有时会遇到这种情况:明明在函数外部已经定义了变量n,在函数内部先把该值打印出来,然后再使该变量自增,运行时却遇到了这样的错误:UnboundLocalError: local variable 'xxx' referenced before assignment如下代码片所示:n=0def func(): print n n+=1func()

2015-04-12 14:20:33 107271 2

原创 python实现分割文件

我们有时候需要对大文件进行分割,从而就可以在记事本等软件中打开以便好做处理,现在使用Python实现一个文件分割的功能,可以按照指定的大小分割文件为一系列子文件。见代码:#!/usr/bin/python# -*- coding: utf-8 -*-import osdef split_file(filename,size): fp=open(filename,'rb')

2015-04-12 10:48:43 7812 1

转载 Python对目录、文件的操作

python中对文件、文件夹的操作需要涉及到os模块和shutil模块。 创建文件:1) os.mknod("test.txt")       创建空文件2) open("test.txt",w)           直接打开一个文件,如果文件不存在则创建文件 创建目录:os.mkdir("file")                   创

2015-04-12 10:45:50 2787

转载 Python之linecache模块

本节主要内容:python linecache模块读取文件在python中,有个好用的模块linecache,该模块允许从任何文件里得到任何的行,并且使用缓存进行优化,常见的情况是从单个文件读取多行。linecache.getlines(filename)从名为filename的文件中得到全部内容,输出为列表格式,以文件每行为列表中的一个元素,并以linenum-1为元素在

2015-04-11 17:42:09 1269

原创 Python读取大文件的行数

如果Python读取小文件时,怎么都好办,但是读取大文件就不一样了,为了防止内存溢出,采用以下代码:#!/usr/bin/python# -*- coding: utf-8 -*-''' count the number of lines when file is big '''count=0fp=open("all_url.txt","r")while 1: buffer=f

2015-04-11 17:27:30 9048

原创 微观经济学(一)经济学十大原理

人们如何做出决策原理一:人们面临权衡取舍天下没有免费的午餐,想要得到一件东西,就得放弃另一件东西。做出决策就是要求我们在一个目标与另一个目标之间进行权衡取舍。原理二:某种东西的成本是为了得到它所放弃的东西由原理一所述,既然人们面临权衡取舍,那么,在权衡取舍的过程中,“取”的成本就是“舍”,也就是说,为了得到一种东西,所放弃的东西。也叫机会成本。比如我想学一小时经济学,就得放

2015-04-11 15:52:02 5505

原创 写在学习经济学原理之前

一直都觉得经济、金融是一门非常高深的学科类别,而且她与我们的生活、与这个世界的运转息息相关,所以使我一个出身工科的人萌生了这样一个学习经济学的强烈愿望。今天拿到了曼昆的经济学原理,包含微观经济学和宏观经济学,准备开始漫长的经济学学习之路。以后,我会不定时把自己读书时的所感所想记录下来,与大家一起分享交流。读到前言时,有一句话打动了我:“学习经济学本身不会使你富有,但它将提供一些有助于你努力

2015-04-11 13:22:22 1204

转载 Python之调试

pdb第4种方式是启动Python的调试器pdb,让程序以单步方式运行,可以随时查看运行状态。我们先准备好程序:# err.pys = '0'n = int(s)print 10 / n然后启动:$ python -m pdb err.py> /Users/michael/Github/sicp/err.py(2)()-> s = '0'以参数-m p

2015-04-11 13:01:21 844

转载 python 的日志logging模块使用方法

python 的日志logging模块学习1.简单的将日志打印到屏幕 import logginglogging.debug('This is debug message')logging.info('This is info message')logging.warning('This is warnin

2015-04-11 12:30:34 1495

原创 python错误类型继承关系

python 错误类型继承关系BaseException +-- SystemExit +-- KeyboardInterrupt +-- GeneratorExit +-- Exception +-- StopIteration +-- StandardError | +-- BufferError | +-- Arit

2015-04-10 21:37:07 622

转载 python定制类

原文链接看到类似__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的。__slots__我们已经知道怎么用了,__len__()方法我们也知道是为了能让class作用于len()函数。除此之外,Python的class中还有许多这样有特殊用途的函数,可以帮助我们定制类。__str__我们先定义一个S

2015-04-10 20:49:40 598

转载 python使用@property

原文链接在绑定属性时,如果我们直接把属性暴露出去,虽然写起来很简单,但是,没办法检查参数,导致可以把成绩随便改:s = Student()s.score = 9999这显然不合逻辑。为了限制score的范围,可以通过一个set_score()方法来设置成绩,再通过一个get_score()来获取成绩,这样,在set_score()方法里,就可以检查参数:class

2015-04-10 19:03:15 443

转载 python使用__slots__

原文链接正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性。先定义class:>>> class Student(object):... pass...然后,尝试给实例绑定一个属性:>>> s = Student()>>> s.name = 'Michael' # 动态给实例绑

2015-04-10 18:51:59 472

转载 python获取对象信息

原文链接当我们拿到一个对象的引用时,如何知道这个对象是什么类型、有哪些方法呢?使用type()首先,我们来判断对象类型,使用type()函数:基本类型都可以用type()判断:>>> type(123)>>> type('str')>>> type(None)如果一个变量指向函数或者类,也可以用type()判断:>>> type(ab

2015-04-10 18:05:42 612

转载 python 类的访问限制

原文链接在Class内部,可以有属性和方法,而外部代码可以通过直接调用实例变量的方法来操作数据,这样,就隐藏了内部的复杂逻辑。但是,从前面Student类的定义来看,外部代码还是可以自由地修改一个实例的name、score属性:>>> bart = Student('Bart Simpson', 98)>>> bart.score98>>> bart.score =

2015-04-10 17:32:52 508

转载 python模块别名和作用域

原文链接别名导入模块时,还可以使用别名,这样,可以在运行时根据当前环境选择最合适的模块。比如Python标准库一般会提供StringIO和cStringIO两个库,这两个库的接口和功能是一样的,但是cStringIO是C写的,速度更快,所以,你会经常看到这样的写法:try: import cStringIO as StringIOexcept ImportEr

2015-04-10 14:19:15 4924

转载 Python偏函数

原文链接偏函数Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function)。要注意,这里的偏函数和数学意义上的偏函数不一样。在介绍函数参数的时候,我们讲到,通过设定参数的默认值,可以降低函数调用的难度。而偏函数也可以做到这一点。举例如下:int()函数可以把字符串转换为整数,当仅传入字符串时,int()函数

2015-04-10 08:12:47 761

转载 Python装饰器 Decorator

原文链接由于函数也是一个对象,而且函数对象可以被赋值给变量,所以,通过变量也能调用该函数。>>> def now():... print '2013-12-25'...>>> f = now>>> f()2013-12-25Try函数对象有一个__name__属性,可以拿到函数的名字:>>> now.__name__'now'>>> f.__na

2015-04-10 07:56:36 824

转载 python中的闭包

原文链接:http://www.cnblogs.com/ma6174/archive/2013/04/15/3022548.html什么是闭包?简单说,闭包就是根据不同的配置信息得到不同的结果再来看看专业的解释:闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使已经离开了创

2015-04-09 21:22:09 553

物联网核心技术:从入门到精通

讲述了最新兴的科技前沿——物联网技术,会很有用的,有志从事物联网研究的人员可以参考

2012-09-13

C编程金典(第三版)

详细讲述了C语言编程的艺术,在编程时可以作为参考,提高编程能力。

2012-09-04

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除