摘要: import可以导入俩种类型的文件 1 module通常模块为一个文件,直接使用import来导入就好了。可以作为module的文件类型有".py"、".pyo"、".pyc"、".pyd"、".so"、".dll"。2 package通常包总是一个目录,可以使用import导入包,或者from + 阅读全文
posted @ 2017-03-21 14:10 sysnap 阅读(414) 评论(0) 推荐(0)
摘要: 魔法方法 含义 基本的魔法方法 __new__(cls[, ...]) 1. __new__ 是在一个对象实例化的时候所调用的第一个方法2. 它的第一个参数是这个类,其他的参数是用来直接传递给 __init__ 方法3. __new__ 决定是否要使用该 __init__ 方法,因为 __new__ 阅读全文
posted @ 2017-03-21 14:04 sysnap 阅读(500) 评论(0) 推荐(0)
摘要: 1 __dict__ 设想这样一个场景。有一个字典,从某个地方获取的,比如http请求发过来的,比如从redis中hgetall出来的。我要根据这个字典来构建一个对象。 比如类 class Person: def __init__(self,_obj): self.name = _obj['name 阅读全文
posted @ 2017-03-21 13:01 sysnap 阅读(1257) 评论(0) 推荐(0)
摘要: 1 filter filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决于sequence的类型) 比如 def f(x): return x % 2 ! 阅读全文
posted @ 2017-03-21 12:43 sysnap 阅读(194) 评论(0) 推荐(0)
摘要: lambda表达式在“:”后只能有一个表达式。也就是说,在def中,用return可以返回的也可以放在lambda后面,不能用return返回的也不能定义在python lambda后面。因此,像if或for或print这种语句就不能用于lambda中,lambda一般只用来定义简单的函数 Pyth 阅读全文
posted @ 2017-03-21 12:16 sysnap 阅读(1018) 评论(0) 推荐(0)
摘要: 1 背景 C#中提供了属性Property这个概念,让我们在对私有成员赋值、获取时更加方便,而不用像C++分别定义set*和get*两个函数,在使用时也就像直接使用变量一样 class C(object): def __init__(self): self._x = None def getx(se 阅读全文
posted @ 2017-03-21 11:46 sysnap 阅读(187) 评论(0) 推荐(0)