Python
文章平均质量分 61
deargua
学下吧,软件工程师
展开
-
观察者模式 python实现
观察者模式在对象之间定义一对多的依赖关系,当主题对象发生变化时,依赖他的对象会收到通知并进行自动更新,观察者模式有‘推’、‘拉’两种模式,本人实现的是‘推’的方式,通过实现‘注册——通知——撤销注册’三个过程实现观察者模式。由于第一次写这么多python代码,出现2个错误,将足迹留下1.在函数notifyObserver中调用update()和函数时一个参数少些了一个下划线,导致调试不出来原创 2009-03-08 22:26:00 · 2225 阅读 · 1 评论 -
python-术语表
Benevolent 英 [bəˈnevələnt]adj. 好心肠的;与人为善的;乐善好施的;慈善的 dic原创 2014-05-12 00:42:26 · 3227 阅读 · 0 评论 -
自定义可迭代类 & yield
重载以下两个函数既可以实现类的kediedai__iter__原创 2014-05-21 21:30:59 · 1168 阅读 · 0 评论 -
bytes & str
stringprefix ::= "r" | "u" | "R" | "U"bytesprefix ::= "b" | "B" | "br" | "Br" | "bR" | "BR" | "rb" | "rB" | "Rb" | "RB"r代表raw的意思,添加上原创 2014-05-21 23:55:56 · 487 阅读 · 0 评论 -
列表解析 list comprehension
列表解析:[返回值 for 元素 in 列表 if 条件] 例比如 [num for num in xrange(100) if num%2==0]原创 2014-05-21 21:45:44 · 1114 阅读 · 0 评论 -
__getattr__ VS __getattribute__
__getattr__ 和__setattr__ 不是一对。 __getattribute__和setattr__ 是一对。VS原创 2014-05-20 23:06:09 · 630 阅读 · 0 评论 -
Python-类
在python的类中双下划线开头的为私有函数,双下划线开头双下划线结尾的为原创 2014-05-20 20:29:51 · 719 阅读 · 0 评论 -
fully qualified name
When used to refer to modules, the fully qualified name means the entire dotted path to the module, including any parent packages, e.g. email.mime.text。原创 2014-05-24 18:39:48 · 656 阅读 · 0 评论 -
内建函数-类型转换
help()运算系列abs()绝对值min()sum()divmod()powmax()round()len()排序sorted()reversed()数据类型type()object()repr()str()bool()int()oct()tuple()dict()bytes()原创 2014-05-24 21:18:35 · 579 阅读 · 0 评论 -
内建函数-frozenset
frozenset:元素一经创建,不可增加、删除和修改。因此没有add、pop、discard、remove和所有以_update结尾的方法。但可以作为左值接受赋值。原创 2014-05-24 22:11:38 · 990 阅读 · 0 评论 -
内建函数-zip
ziplist1 = [1,2,3,4]list2 = [5,6,7]list3 = [8,9,10]zipped1 = zip(list1,list2,list3)zipped2 = zip(list1)print(list(zipped1))print(list(zipped2))print(list(zip()))原创 2014-05-24 23:34:22 · 740 阅读 · 0 评论 -
内建函数-eval & exec
eval(expression, globals=None, locals=None)原创 2014-05-24 21:36:54 · 714 阅读 · 0 评论 -
with
context manager An object which controls the environment seen in a with statement by defining __enter__() and __exit__() methods. See PEP 343.原创 2014-05-18 11:31:48 · 598 阅读 · 0 评论 -
position arguments & keyword arguments
position arguments & keyword arguments原创 2014-05-17 23:20:35 · 1483 阅读 · 0 评论 -
windows中movie播放
windows不能使用pygame.movie貌似pymedia只支持到python2.4,以后的版本不支持。。。。。。在windows中播放视频文件时只能听到声音,到官网查下,说不能播放。不过可以用pymedia替代。 要在游戏中播放片头动画、过场动画等视频画面,可以使用模块。 要播放视频中的音乐,pygame.movie模块需要对音频接口的完全控制,不能初始化mixer模块原创 2009-03-24 23:16:00 · 1185 阅读 · 0 评论 -
surface和屏幕
surface和屏幕 pygame最重要的部分就是surface。我们可以把surface看作是一张白纸。你可以对surface作很多操作,比如在surface上画线、用某种颜色填充surface上的部分区域、把图片拷贝到surface上去,把图片从surface上复制下来、设置或者读取surface上某个点的颜色。一个surface可以是任何大小,一个游戏可以有任意多surface。其中转载 2009-03-23 23:56:00 · 2355 阅读 · 0 评论 -
python类的注意点
1.成员变量同成员函数重名同名的数据属性会覆盖方法属性,为了避免可能的命名冲突--这在大型程序中可能会导致难以发现的 bug --最好以某种命名约定来避免冲突。可选的约定包括方法的首字母大写,数据属性名前缀小写(可能只是一个下划线),或者方法使用动词而数据属性使用名词。class test(): def __init__(self): self.a = ok转载 2009-03-27 11:14:00 · 1000 阅读 · 0 评论 -
变量的作用域
python3中增加了nonlocal关键字,在用全局变量时一定要注意作用域的范围。以下示例演示了如何引用不同的作用域和命名空间,以及如何使用 global和 nonlocal 影响变量绑定:#-*-coding:utf-8-*-spam = Nonedef scope_test(): def do_local(): spam = loca原创 2009-03-26 23:14:00 · 699 阅读 · 0 评论 -
python3 多线程
python3多线程原创 2011-08-07 23:18:14 · 4656 阅读 · 0 评论 -
python3 字符串和字节之间的转换
搞了一晚上才搞明白,记录下: 字符串解码成字节:bytes = str.encode(encoding='utf-8', errors = 'strict')将字符串解码成字节,默认的解码方式为utf-8,这个需要根据当前字符串的编码方式来进行解码。 字节原创 2011-08-07 00:26:53 · 22671 阅读 · 0 评论 -
python容易被遗忘的部分
0.两个小函数str.rstrip([chars]) 剪切右边字符动作>>> ' spacious '.rstrip()' spacious'>>> 'mississippi'.rstrip('ipz')'mississ'python中有个copy模块,可以进行深拷贝动作1.Using the Python Interpreter文件编码#原创 2012-10-08 21:32:38 · 838 阅读 · 0 评论 -
下划线
Python 用下划线作为变量前缀和后缀指定特殊变量_xxx 不能用’from module import *’导入__xxx__ 系统定义名字__xxx 类中的私有变量名核心风格:避免用下划线作为变量名的开始。因为下划线对解释器有特殊的意义,而且是内建标识符所使用的符号,我们建议程序员避免用下划线作为变量名的开始。一般来讲,变量名_xxx被看作是“转载 2012-10-25 23:48:04 · 1258 阅读 · 0 评论 -
python类-属性
实例属性和类属性理论基础类属性有点类似C++中的静态变量,可以通过 【类名.属性 】直接访问实例属性故名思议就是只有定义了类的实例后才可以用的属性通过类名不可以访问实例属性通过实例可以访问类属性如果实例属性给类属性进行了赋值操作,则会将其覆盖。代码示例class SYG(object): class_var = 1 def原创 2013-06-29 10:28:22 · 1325 阅读 · 0 评论 -
python类-各种method
一般的method第一个参数必须是self,实例本身用的时候类似这样 instance_class.method()类method第一个参数是class,是类本身用的时候类似这样CLASS_name.method()这样也可以 instance_class.method()静态method第一个参数是随意,和类,实例无关用的时候类似这样CLASS_nam原创 2013-06-29 12:44:32 · 1297 阅读 · 0 评论 -
python类-super
super的定义为:super([type[,object-or-type]])具体说明可以参见python文档,主要用途有两种情况1)单继承时用来引用父类各种方便2)多继承时可以区分具体调用哪个父类的方法代码示例:单继承class A(object): def __init__(self): self.x = 1原创 2013-06-29 16:56:25 · 1164 阅读 · 0 评论 -
argv
执行脚本时传入参数:tmp.pyimport sysfor i in sys.argv: print(i)在cmd下执行:python tmp.py -c -d test输出内容为:tmp.py-c-dtmp原创 2014-05-17 18:12:11 · 571 阅读 · 0 评论 -
Function Annotations
可以通过函数注释的形式给meig原创 2014-05-17 23:43:00 · 703 阅读 · 0 评论 -
Exception
Python的内置异常类的继承关系如下所示原创 2014-05-18 09:37:51 · 649 阅读 · 0 评论 -
Re
6.2. re — Regular expression operationsThis module provides regular expression matching operations similar to those found in Perl.Both patterns and strings to be searched can be Unicode strings原创 2014-05-26 21:52:34 · 772 阅读 · 0 评论