Python第十三课

1.封装一

class   Bevarage(object):

    def __init__(self,name):
        self.bevarage_brand=name

    def get_name(self):
        return self.name

    def set_name(self,name):
        self.bevarage_brand=name

juice=Bevarage('cola')
print(juice.bevarage_brand)
juice.set_name('orange juice')
print(juice.bevarage_brand)

#运行结果#
cola
orange juice

2.封装二

class BookStyle(object):

    def __init__(self,name):
        # self._style_name=name
        self.__style_name=name

    def get_name(self):
        # return self._style_name
        return self.__style_name

    def set_name(self,name):
        # self._style_name=name
        self.__style_name=name

style=BookStyle('modern')
# print(style._style_name)
# style.set_name('classic')
# print(style._style_name)
print(style.get_name())
style.__style_name='classic'
print(style.get_name())

#运行结果#
modern
modern

3.property装饰器

class Field(object):

    def __init__(self,name):
        self._range_name=name

    @property #使我们的属性的获取和修改变得更加简洁
    def name(self):
        return self._range_name

    @name.setter
    def name(self,name):
        self._range_name=name

example=Field('Artifical Intelligence')
print(example.name)
example._range_name='Science and Technology'
print(example.name)
example._range_name='Electronics and Communications'
print(example.name)

#运行结果#
Artifical Intelligence
Science and Technology
Electronics and Communications

4.继承

class Season(object):
    pass

class Weather(Season): #括号内要写需要继承的父类的名称
    pass

5.方法的重写

class Book(object):
    def book_attribute(self):
        print('textbook')

class Quatity(Book):
    def book_attribute(self) :# 这就是方法的重写,是建立在继承的基础上面的,并且是重写同名的方法
        print('The total number is 2 millions.')

start=Quatity()
start.book_attribute()

#运行结果#
The total number is 2 millions.

6.多重继承

class Season(object):

    def season_content(self):
        print('This includes four parts:Spring,Summer,Autumn,Winter.')

class Weather(object):
    def weather_type(self):
        print('wind,cold,cool,warm,hot,extreme hot or cold.')

class Feeling(Season,Weather):
    pass

feel=Feeling()
feel.weather_type()
feel.season_content()
print(Feeling.__bases__) #查看当前类继承的所有父类

#运行结果#
wind,cold,cool,warm,hot,extreme hot or cold.
This includes four parts:Spring,Summer,Autumn,Winter.
(<class '__main__.Season'>, <class '__main__.Weather'>)

7.super()方法

super()方法的使用建立在方法的重写之上,有需要重新调用父类的方法
class Flower(Language):

    def __init__(self,name):
        super().__init__(name)
        self.name=name
    def speak(self):
        super().speak()
        print('rose')

class Mammals(Flower):

    def __init__(self,name):
        super().__init__(name)
        self.name=name
    def speak(self):
        super().speak() #这是调用父类的同名方法
        print(self.name)

sample=Mammals('lion')
sample.speak()
print(sample.name)

#运行结果#
English
rose
lion
lion
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值