【1.107】self的使用,类访问、对象访问处理(只有实例化和对象调用方法时才是自己将self传入 这时self就是对象自己,如对象a1)

class Aniaml:
    type_name = '动物类'
    def __init__(self,name,sex,age):
            self.name = name
            self.age = age
            self.sex = sex
    def eat(self):
        print(self)
        print('吃%s'%self)
    def eat_food(self):
        print(self)
        print('%s吃%s' % (self.name,""))

# 类访问时可以自己访问自己的方法,只要不涉及初始化的参数
Aniaml.eat("meat")
# meat
# 吃meat

# 不能这样用,必须要创建对象,才能用 eat_food 方法,涉及到初始化的参数
# Aniaml.eat_food("cat")


#创建对象
a1 = Aniaml("花花","male",1)
a1.eat_food()
# <__main__.Aniaml object at 0x0000000001E851D0>
# 花花吃鱼


a1.eat()   #自动传入a1
#  <__main__.Aniaml object at 0x00000000027551D0>
#  吃<__main__.Aniaml object at 0x00000000027551D0>

 2、self 并不一定非要写为self  但是一般默认是self 

也可以写为其他的字符  看下面的例子:

class che:
    def __init__(myself,name):
        myself.name=name
    def love(myself):
        print("love you %s"%myself.name)

c1=che("lily")
c1.love()    #love you lily

 

posted @ 2016-05-13 18:00  科学小怪癖  阅读(123)  评论(0)    收藏  举报