python里面的self和_int_具体作用和怎么理解它们?

python里面的self和_int_具体作用和怎么理解它们?

大家好呀,python里面的self和_int_具体作用和怎么理解它们?
我看了好几遍书,都觉得有点怪怪的!
sample:
class Person:
         def _init_(self,name):
                  self.name=name
         def sayhello(self):
                  print 'My name is:',self.name
p=Person('tianya')
print p

上面的例子是我看沈洁元的简明python教程时看到的,但是看了几遍不明白呀!

init 是对类进行初始化。
self 就是类本身自己,上面这个实例,
def __init__(self,name)
        self.name = name
表示把name赋值给类本身的变量name
,self相当于c++中的this


呵呵 也不知道对不对。  刚刚看了3个小时的python,说的不正确请见谅。
__init__是构造函数(constractor)
self用在函数参数是指类自己,python自己用到的。在类方法里必须作为第一个参数出现(换成abcd也行,不过写成self是约定)
如果self用在类其他地方,就是本身
如果看过JAVA就很好理解了


QUOTE:
原帖由 okmmno1 于 2006-11-25 18:49 发表
init 是对类进行初始化。
self 就是类本身自己,上面这个实例,
def __init__(self,name)
        self.name = name
表示把name赋值给类本身的变量name
,self相当于c++中的this


呵呵 也不知道对不对。 ...

self不是类本身,而是实例本身。
楼上的各位,还是好好看看那个dive into python再来发言吧。
ps:5.3 类的初始化
CU是一个自由的论坛,我认为,但是不要意气用事,高手很多,当然我也不会贴一段英文的东西来证明什么的。因为对象我这样的新手来说,可能理解有点难哦。不过还是非常感谢l4kernel
没有你的鞭策,可能我还不会理解这么深,谢谢。
海天同学,我没有用中文学过计算机,所以不好意思,贴了段英文。

您说了半天,self还是指实例的意思,对self.var的改动影响直接施加于self上。

我昨天路过,顺便纠正一下前面人的错误。您这种半桶水出来吊书袋,难为了。