python中的self是什么

如题所述

self是类的实例或对象。在Python中,self包含在第一个参数中。但是,Java中的情况并非如此,它是可选的。它有助于区分具有局部变量的类的方法和属性。init方法中的self变量引用新创建的对象,而在其他方法中,它引用其方法被调用的对象。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-04
class Name():
def __init__(self, name):
self.name = name
def say(self):
print 'Hello, %s' % self.name
如果不用self,那该怎么实现say(),非常难。

__inti__(self.name)叫做构造函数,凡是Name类的一个对象被创建,先运行构造函数,构造函数需要的参数就是类所需要的参数。 比如 a = Name('Ricky') 其实是 给__init__(self,name)提供参数。而self就说明是类的变量,类里别的函数也可以用的!

这是面向对象编程思路的一个瓶颈,希望你能弄懂。

参考资料:自己写的,不谢

第2个回答  2012-04-23
就是指本身这个类,跟C++和Java中的this 比较类似
第3个回答  2012-04-23
指类的实例本身
第4个回答  2012-04-25
这算是一种约定,没有实际意义,但又最好不要省