1.第一个面向对象
class Cat :
def eat ( self) :
print ( "小猫爱吃鱼" )
def drink ( self) :
print ( "小猫要喝水" )
tom = Cat( )
tom. eat( )
tom. drink( )
print ( tom)
addr = id ( tom)
print ( "%x" % addr)
2.新建两个猫对象
class Cat :
def eat ( self) :
print ( "小猫爱吃鱼" )
def drink ( self) :
print ( "小猫要喝水" )
tom = Cat( )
tom. eat( )
tom. drink( )
print ( tom)
lazy_cat = Cat( )
lazy_cat. eat( )
lazy_cat. drink( )
print ( lazy_cat)
lazy_cat2 = lazy_cat
print ( lazy_cat2)
3.设置对象属性_self
class Cat :
def eat ( self) :
print ( "%s 爱吃鱼" % self. name)
def drink ( self) :
print ( "%s 要喝水" % self. name)
tom = Cat( )
tom. name = "Tom"
tom. eat( )
tom. drink( )
print ( tom)
lazy_cat = Cat( )
lazy_cat. name = "大懒猫"
lazy_cat. eat( )
lazy_cat. drink( )
print ( lazy_cat)
4.在外界设置属性的问题
class Cat :
def eat ( self) :
print ( "%s 爱吃鱼" % self. name)
def drink ( self) :
print ( "%s 要喝水" % self. name)
tom = Cat( )
tom. eat( )
tom. drink( )
tom. name = "Tom"
5.初始化方法
class Cat :
def __init__ ( self) :
print ( "这是一个初始化方法" )
self. name = "Tom"
def eat ( self) :
print ( "%s 爱吃鱼" % self. name)
tom = Cat( )
print ( tom. name)
6.利用参数设置属性初始值
class Cat :
def __init__ ( self, new_name) :
print ( "这是一个初始化方法" )
self. name = new_name
def eat ( self) :
print ( "%s 爱吃鱼" % self. name)
tom = Cat( "Tom" )
print ( tom. name)
lazy_cat = Cat( "大懒猫" )
lazy_cat. eat( )
7.del方法
class Cat :
def __init__ ( self, new_name) :
self. name = new_name
print ( "%s 来了" % self. name)
def __del__ ( self) :
print ( "%s 我去了" % self. name)
tom = Cat( "Tom" )
print ( tom. name)
del tom
print ( "-" * 50 )
8.str方法
class Cat :
def __init__ ( self, new_name) :
self. name = new_name
print ( "%s 来了" % self. name)
def __del__ ( self) :
print ( "%s 我去了" % self. name)
def __str__ ( self) :
return "我是小猫[%s]" % self. name
tom = Cat( "Tom" )
print ( tom)
9.小明爱跑步
class Person :
def __init__ ( self, name, weight) :
self. name = name
self. weight = weight
def __str__ ( self) :
return "我的名字叫 %s 体重是 %.2f 公斤" % ( self. name, self. weight)
def run ( self) :
print ( "%s 爱跑步,跑步锻炼身体" % self. name)
self. weight -= 0.5
def eat ( self) :
print ( "%s 是吃货,吃完这顿再减肥" % self. name)
self. weight += 1
xiaoming = Person( "小明" , 75.0 )
xiaoming. run( )
xiaoming. eat( )
print ( xiaoming)
10.小明爱跑步扩展
class Person :
def __init__ ( self, name, weight) :
self. name = name
self. weight = weight
def __str__ ( self) :
return "我的名字叫 %s 体重是 %.2f 公斤" % ( self. name, self. weight)
def run ( self) :
print ( "%s 爱跑步,跑步锻炼身体" % self. name)
self. weight -= 0.5
def eat ( self) :
print ( "%s 是吃货,吃完这顿再减肥" % self. name)
self. weight += 1
xiaoming = Person( "小明" , 75.0 )
xiaoming. run( )
xiaoming. eat( )
print ( xiaoming)
xiaomei = Person( "小美" , 45 )
xiaomei. eat( )
xiaomei. run( )
print ( xiaomei)
print ( xiaoming)