在面向对象编程中,你可编写表示显示世界中的事物和情景的类,并基于这些类来创建对象。
一.创建类
class Dogs(object):
"""docstring for Dogs"""
def __init__(self, name, age):
#super(Dogs, self).__init__()
self.age = age
self.name = name
dogggg = Dogs('black', 1)
print(dogggg.name)
class Ball(object):
def __init__(self, name):
self.name = name
def kick(self):
print("My name is Ball %s"% self.name)
b = Ball('黄瓜')
b.kick()
class Person:
name = 'xiaojiayu'
p = Person()
print('\n' + p.name)
----------
Result:
black
My name is Ball 黄瓜
xiaojiayu
1.方法init(),开头和末尾各有两个下划线,避免Python默认方法与普通方法发生名称冲突。Python调用init()方法常见Dog实例时,将自动传入实参self。每个与类关联的方法调用都自动传递实参self,它是一个只想实例本身的引用,让示例能够访问类中的属性和方法。
2.将类视为有关如何创建实例的说明。方法init()并未显式的包含return语句,但Python自动的返回一个表示这条小狗的实例。doggg则是根据类创建的实例。
3.使用句点来使用类的属性和方法.
例如:doggg.name 使用类的属性。
doggg.sit()使用类中的方法。
4.课后习题,创建一个Restaurant的类
class Restaurant(object):
def __init__(self, name, curisine_type):
self.name = name
self.curisine_type = curisine_type
def open_restaurant(self):
print(self.name + ' ' +self.curisine_type + " is open!")
restaurant = Restaurant('北京', '饭店')
restaurant.open_restaurant()
----------
Result:
北京 饭店 is open!