07 2016 档案

摘要:__str__ 首先看个例子: >>> class Student(object): ... def __init__(self, name): ... self.name = name ... >>> print(Student('Michael')) 这样打印出的不好看, 给它定制一下: >>> class Student(object): ... def ... 阅读全文
posted @ 2016-07-31 17:07 黄小墨 阅读(214) 评论(0) 推荐(0)
摘要:假设我们要实现以下4种动物: Dog - 狗狗; Bat - 蝙蝠; Parrot - 鹦鹉; Ostrich - 鸵鸟。 按类型可以分类:哺乳动物,鸟类 按功能可以分类: 会飞的,会跑的 使用类的多重继承: class Animal(object): pass # 大类: class Mammal(Animal): pass class Bird(Animal): ... 阅读全文
posted @ 2016-07-31 00:41 黄小墨 阅读(497) 评论(0) 推荐(0)
摘要:实例属性通过self或实例变量来定义,注意__init__方法中定义的是实例属性: class Student(object): def __init__(self, name): self.name = name s1 = Student('Bob') #给实例添加一个属性 s1.score = 90 s2 = Student('Jim') 在实例s1中添加一个属... 阅读全文
posted @ 2016-07-30 23:59 黄小墨 阅读(2334) 评论(0) 推荐(0)
摘要:1. 执行效率极高。因为子程序切换不是线程切换,而是由程序自身控制,因此没有线程切换的开销,和多线程比,线程数量越多,协程的性能优势就越明显。 2. 不需要多线程的锁机制, 因为只有一个线程,不存在写变量冲突,在协程中控制共享资源不加锁,只需要判断状态就好了。 协程始终只是一个线程执行,那如何得用多核CPU呢? 最简单的办法就是多进程+协程, 可获得极高的性能、python对协程的支持是通过gen... 阅读全文
posted @ 2016-07-29 00:17 黄小墨 阅读(199) 评论(0) 推荐(0)
摘要:最简单的并发 import socket response = 'HTTP/1.1 200 OK\r\nConnection:Close\r\nContent-Length:11\r\n\r\nHello World' server = socket.socket() server.bind(('0.0.0.0', 9527)) server.listen(1024) while True:... 阅读全文
posted @ 2016-07-27 22:57 黄小墨 阅读(258) 评论(0) 推荐(0)