- 博客(23)
- 收藏
- 关注
原创 python 类demo(2)__metaclass__批量化添加属性
__metaclass__批量化添加属性>>> def ma(cls): #注意cls 不然报错。没有ma属性 print 'method a'>>> def mb(cls): #注意cls 不然报错。没有mb属性 print 'method b' >>> method_dict = {'ma':ma,'mb':mb}>>> class Dy(type): d
2017-11-06 16:56:31
876
原创 python 类demo
class Fab(object): def __init__(self, max): self.max = max self.n, self.a, self.b = 0, 0, 1 def __iter__(self): return self def next(self): if sel
2017-11-04 20:19:52
673
原创 python 新式类学习随笔-装饰器(3)
@propertyclass Student(object): def __init__(self, name, age): self.name = name self.age = age @property #引用装饰器property def age(self): return self.__age
2017-11-04 14:16:42
262
转载 python 类-super方法
Python中对象方法的定义很怪异,第一个参数一般都命名为self(相当于其它语言的this),用于传递对象本身,而在调用的时候则不必显式传递,系统会自动传递。举一个很常见的例子:>>> class Foo:def bar(self, message):print(message)>>> Foo().bar("Hello, World.")Hello, Worl
2017-11-03 19:34:06
266
转载 python 新式类的学习随笔-定制类的特殊方法(2)
这部分大部分都是转载自python学习(7)定制类的特殊方法,加了一些自己的理解。形如__xxx__的函数是类的特殊方法。常需要修改的特殊方法有下面这些:PS:下划线的几种用法说一下几种常用的:1.名称前的单下划线(_strri):程序员使用名称前的单下划线,用于指定该名称属性为“私有”。如果你写了代码“from import *”,那么以“_”开头的名称都不
2017-11-03 19:18:48
337
原创 python 新式类学习随笔-定制类的特殊方法(1)
平台:win8 python2.71.__new__先看下object类中对__new__()方法的定义: @staticmethod # known case of __new__ def __new__(cls, *more): # known special case of object.__new__ """ T.__new__(S, ...) ->
2017-11-03 18:06:51
297
转载 python之__new__方法与实例化
__new__() 是在新式类中新出现的方法,它作用在构造方法建造实例之前,可以这么理解,在 Python 中存在于类里面的构造方法 __init__() 负责将类的实例化,而在 __init__() 启动之前,__new__() 决定是否要使用该 __init__() 方法,因为__new__() 可以调用其他类的构造方法或者直接返回别的对象来作为本类的实例。如果将类比喻为工厂,那么
2017-11-01 21:17:35
266
转载 用python写爬虫的一些技巧:进阶篇
from http://obmem.info/?p=753以前写过一篇使用python爬虫抓站的一些技巧总结,总结了诸多爬虫使用的方法;那篇东东现在看来还是挺有用的,但是当时很菜(现在也菜,但是比那时进步了不少),很多东西都不是很优,属于”只是能用”这么个层次。这篇进阶篇打算把“能用”提升到“用得省事省心”这个层次。一、gzip/deflate支持 现在的网页普遍支持gzip压缩,这往往可以解决
2017-10-06 20:03:23
429
原创 python re模块
正则表达式包含一个元字符(metacharacter)的列表,列表值如下: . ^ $ * + ? { [ ] \ | ( ) 1.元字符([ ]),它用来指定一个character class。所谓character classes就是你想要匹配的字符(character)的集合.字符(character)可以单个的列出,也可以通过"-"来分隔两个字符来表示一个范围。例
2017-09-06 14:19:59
4155
原创 HTTP错误码
2xx 成功 200 正常;请求已完成。 201 正常;紧接 POST 命令。 202 正常;已接受用于处理,但处理尚未完成。 203 正常;部分信息 — 返回的信息只是一部分。 204 正常;无响应 — 已接收请求,但不存在要回送的信息。 3xx 重定向 301 已移动 — 请求的数据具有新的位置且更改是永久的。 302 已找到
2017-08-14 17:31:39
411
原创 python urllib模块
urllib.urlopen(url[, data[, proxies]]) :创建一个表示远程url的类文件对象,然后像本地文件一样操作这个类文件对象来获取远程数据。参数url表示远程数据的路径,一般是网址;参数data表示以post方式提交到url的数据(玩过web的人应该知道提交数据的两种方式:post与get。如果你不清楚,也不必太在意,一般情况下很少用到这个参数);参数proxies用于设
2017-08-13 12:09:46
366
原创 python cgi服务尝试
python自带CGIHTTPServer服务器与htm进行CGIl交互发送邮件py2.7 开始: 1 进入某个你想创建为服务器的文件夹,假如文件夹名为www。从cmd进入www文件夹,运行python -m CGIHTTPServer,默认端口是8000,可能被其他程序占用(我跑程序的时候就被占用了,这个我弄了好久才发现),可以自己设置端口(最好大于1024)。 python -m CG
2017-08-10 14:38:21
338
原创 Python判断当前操作系统类型以及os/sys/platform模块简介,pythonplatform
Python判断当前操作系统类型以及os/sys/platform模块简介,pythonplatform判断操作系统类型#coding=utf-8import platformdef TestPlatform( ): print ("----------Operation System--------------------------") # 获取Py
2017-08-09 16:08:22
511
原创 python MySQLdb使用
下载安装MySQLdb <1>linux版本 http://sourceforge.net/projects/mysql-python/ 下载,在安装是要先安装setuptools,然后在下载文件目录下,修改mysite.cfg,指定本地mysql的mysql-config文件的路径 <2>windows版本 网上搜索到一个http://www.technicalbard.com/files
2017-08-02 17:17:39
439
转载 python xml解析
http://www.cnblogs.com/miniren/p/5091744.html #sax方式http://www.runoob.com/python/python-xml.html #SAX,DOM,以及ElementTree 三种方式
2017-08-01 14:27:23
214
转载 使用@property
在绑定属性时,如果我们直接把属性暴露出去,虽然写起来很简单,但是,没办法检查参数,导致可以把成绩随便改:s = Student()s.score = 9999这显然不合逻辑。为了限制score的范围,可以通过一个set_score()方法来设置成绩,再通过一个get_score()来获取成绩,这样,在set_score()方法里,就可以检查参数:class Student(object):
2017-07-12 16:49:35
244
转载 python threading/Event & Timer(3)
threading.Event Event实现与Condition类似的功能,不过比Condition简单一点。它通过维护内部的标识符来实现线程间的同步问题。(threading.Event和.NET中的System.Threading.ManualResetEvent类实现同样的功能。) Event.wait([timeout]) 堵塞线程,直到Event对象内部标识位被设为True
2017-07-11 17:34:02
556
转载 python threading/lock&Rlock&condition 锁
threading.RLock和threading.Lock 在threading模块中,定义两种类型的琐:threading.Lock和threading.RLock。它们之间有一点细微的区别,通过比较下面两段代码来说明: import threading lock = threading.Lock() #Lock对象 lock.acquire() #获取锁lock.acq
2017-07-11 16:53:33
590
转载 python threading模块/thread多线程(1)
threading.Thread Thread 是threading模块中最重要的类之一,可以使用它来创建线程。有两种方式来创建线程:一种是通过继承Thread类,重写它的run方法;另一种是创建一个threading.Thread对象,在它的初始化函数(init)中将可调用对象作为参数传入。下面分别举例说明。先来看看通过继承threading.Thread类来创建线程的例子: #cod
2017-07-11 16:44:11
276
转载 python select网络编程模块详解
刚看了反应堆模式的原理,特意复习了socket编程,本文主要介绍python的基本socket使用和select使用,主要用于了解socket通信过程一、socket模块socket — Low-level networking interfaceThis module provides access to the BSD socket interface. It is available on a
2017-07-08 18:48:06
718
转载 Python select 详解
select函数操作集合的时候有个要求,要么集合本身是描述符,要么他提供一个fileno()接口,返回一个描述符。
2017-07-06 17:23:13
2394
转载 Python中的random模块
Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。random.randomrandom.random()用于生成一个0到1的随机符点数: 0 random.uniform random.uniform的函数原型为:random.uniform(a, b),用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一
2016-09-26 20:58:17
181
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人