摘要:
运行结果: <_sre.SRE_Match object; span=(0, 5), match='dfgt5'> <_sre.SRE_Match object; span=(0, 2), match='t5'> 4 dfffgg ['5', '4', '5'] ['dgg', '', 't'] 注 阅读全文
摘要:
执行到os.fork()时,发起fork系统调用,操作系统复制父进程得到子进程。fork系统调用完毕,返回给父进程子进程的id号,返回给子进程0,然后父子进城开始执行。我们可以看到haha被打印了两次,更加说明了子进程是复制父进程得来的 再举个例子,说明子金成是复制父进程: 子进程正常打印了ppp的 阅读全文
摘要:
import threading # 创建全局ThreadLocal对象: local_school = threading.local() def process_student(): # 获取当前线程关联的student: std = local_school.student print('Hello, %s (in %s)' % (std, threading.... 阅读全文
摘要:
以上两个函数报的错误全是,本地变量在未分配前引用了 调用这个函数时,Python解释器会先生成命名空间。当发现有条语句对a进行了赋值操作,pytgon就认为这个a是局部变量,就会把a这个变量添加到自己的局部命名空间。任何变量,都要先赋值然后才能引用,否则报错。就像下面这个 当然了,可以事先加glob 阅读全文
摘要:
转载自https://www.cnblogs.com/MnCu8261/p/6365665.html 实际上,实例化类时调用的第一个方法并不是__init__,而是__new__,其作用正是创建并返回我们要创建的类的对象,然后才是执行__init__方法(如果类中有定义的话) 好了,接下来是重点: 阅读全文
摘要:
转载自大神http://www.cnblogs.com/vipchenwei/p/7121720.html 简单来说就是一个类只能创建唯一的实例 4.应用场景 需要频繁实例化然后销毁的对象。 创建对象时耗时过多或者耗资源过多,但又经常用到的对象。 有状态的工具类对象。 频繁访问数据库或文件的对象。 阅读全文
摘要:
在许多语言当中,类似于a.b()这样的调用方法是一个整体,但在Python中,它其实是两部分:获取属性a.b,调用()。所以也可以写成: c = a.b c() 2.关于继承 class a: num=5 class b(a): pass print (b.num)#b类继承了num属性,结果是不仅 阅读全文
摘要:
这是第一种情况,就是在没加装饰器的情况下,实例调用的方法就称之为绑定方法,类调用的方法就是非绑定方法。实例调用绑定方法时总是会给方法传递他自己本身作为第一个参数。无论是在py2还是在py3下。而对于非绑定方法,py2要求必须给方法传递类的对象作为第一个参数。所以在定义方法的时候参数不能为空,否则报错 阅读全文
摘要:
备注:O==object 2.python-C3算法解析: #C3 定义引用开始 C3 算法:MRO是一个有序列表L,在类被创建时就计算出来。 L(Child(Base1,Base2)) = [ Child + merge( L(Base1) , L(Base2) , Base1Base2 )] L 阅读全文
摘要:
http://funhacks.net/2016/11/09/super/ super仅被用于新式类 在类的继承中,如果重定义某个方法,该方法会覆盖父类的同名方法,但有时,我们希望能同时实现父类的功能,这时,我们就需要调用父类的方法了,可通过使用 super 来实现,比如: 在上面,Animal 是 阅读全文