最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

python类参数self使用示例

来源:动视网 责编:小采 时间:2020-11-27 14:30:03
文档

python类参数self使用示例

python类参数self使用示例: 代码如下:#coding:utf-8__new__和__init__到底是怎么一回事,看下面的代码如果类没有定义__new__方法,就从父类继承这个__new__方法。__new__先于__init__执行,类带括号调用时,发生这样的一件事,先调用类的__new__方法,放回该类的实例对象,这
推荐度:
导读python类参数self使用示例: 代码如下:#coding:utf-8__new__和__init__到底是怎么一回事,看下面的代码如果类没有定义__new__方法,就从父类继承这个__new__方法。__new__先于__init__执行,类带括号调用时,发生这样的一件事,先调用类的__new__方法,放回该类的实例对象,这


代码如下:


#coding:utf-8
"""
__new__和__init__到底是怎么一回事,看下面的代码
如果类没有定义__new__方法,就从父类继承这个__new__方法。
__new__先于__init__执行,类带括号调用时,发生这样的一件事,
先调用类的__new__方法,放回该类的实例对象,这个实例对象就是__init__方法的第一个参数。
请看代码中tmp,self,p的内存地址都是一样的,都是类的实例对象。
"""

class Foo(object):
def __new__(cls, *args, **kwargs):
"""如果不覆盖这个__new__方法,也就是说不写这个__new__方法,类会从object
继承__new__方法完成返回值实例对象
"""
print "__new__方法先被调用"
tmp = super(Foo,cls).__new__(cls,*args, **kwargs)
print id(tmp)
print type(tmp)
print isinstance(tmp,Foo)
print issubclass(type(tmp),Foo)
return tmp

def __init__(self):
"""self是python默认传的值,该值是调用__new__的返回值"""
print "__init__被调用"
print id(self)


p = Foo()
print id(p)
print type(p)

文档

python类参数self使用示例

python类参数self使用示例: 代码如下:#coding:utf-8__new__和__init__到底是怎么一回事,看下面的代码如果类没有定义__new__方法,就从父类继承这个__new__方法。__new__先于__init__执行,类带括号调用时,发生这样的一件事,先调用类的__new__方法,放回该类的实例对象,这
推荐度:
标签: 用法 参数 实例
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top