下载此文档

python面试卷100.doc


文档分类:IT计算机 | 页数:约87页 举报非法文档有奖
1/87
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/87 下载此文档
文档列表 文档介绍
python面试卷100.docPython语言特性1Python的函数参数传递看两个如下例子,分析运行结果:代码一:a=1deffun(a):a=2fun(a)print(a)#1代码二:a=[]deffun(a):(1)fun(a)print(a)#[1]所有的变量都可以理解是内存中一个对象的“引用”,或者,也可以看似c中void*的感觉。这里记住的是类型是属于对象的,而不是变量。而对象有两种,“可更改”(mutable)与“不可更改”(immutable)对象。在python中,strings,tuples,和numbers是不可更改的对象,而list,dict等则是可以修改的对象。(这就是这个问题的重点)当一个引用传递给函数的时候,函数自动复制一份引用,,当函数返回的时候,,函数内的引用指向的是可变对象,对它的操作就和定位了指针地址一样,(metaclass)元类就是用来创建类的“东西”。你创建类就是为了创建类的实例对象,但是我们已经学习到了Python中的类也是对象。好吧,元类就是用来创建这些类(对象)的,元类就是类的类这个非常的不常用,详情请看:《深刻理解Python中的元类(metaclass)》******@staticmethod和***@classmethodPython其实有3个方法,即静态方法(staticmethod),类方法(classmethod)和实例方法,如下: classA(object):    deffoo(self,x):        print"executingfoo(%s,%s)"%(self,x)     ***@classmethod    defclass_foo(cls,x):        print("executingclass_foo(%s,%s)"%(cls,x))     ***@staticmethod    defstatic_foo(x):        print("executingstatic_foo(%s)"%x) a=A(),我们知道在类里每次定义方法的时候都需要绑定这个实例,就是foo(self,x),为什么要这么做呢?因为实例方法的调用离不开实例,我们需要把实例自己传给函数,(x)(其实是foo(a,x)).类方法一样,只不过它传递的是类而不是实例,(x).注意这里的self和cls可以替换别的参数,但是python的约定是这俩,,不需要对谁进行绑定,(x)(x)来调用.\实例方法类方法静态方法a=A()(x)(x)(x)(x)(x)4类变量和实例变量classPerson:    name="aaa" p1=Person()p2=Person()="bbb"print()  #bbbprint()  #aaaprint()  #aaa类变量就是供类使用的变量,="bbb"是实例调用了类变量,这其实和上面第一个问题一样,就是函数传参的问题,="aaa",但是在实例的作用域里把类变量的引用改变了,就变成了一个实例变量,:classPerson:    name=[] p1=Person()p2=Person()(1)print()  #[1]print()  #[1]print()  #[1],(),dir(),getattr(),hasattr(),isinstance().6字典推导式可能你见过列表推导时,却没有见过字典推导式,:d={key:valuefor(key,value)initerable}7Python中单下划线和双下划线12345678>>

python面试卷100 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数87
  • 收藏数0 收藏
  • 顶次数0
  • 上传人459972402
  • 文件大小127 KB
  • 时间2019-04-28