Python知識分享網(wǎng) - 專業(yè)的Python學習網(wǎng)站 學Python,上Python222
Python的動態(tài)性
匿名網(wǎng)友發(fā)布于:2023-09-12 11:11:33
(侵權舉報)

Python 7天快速入門完整視頻教程https://www.bilibili.com/video/BV1o84y1Z7J1

 

Python的動態(tài)性

 

 

Python是動態(tài)語言,動態(tài)語言的典型特征就是:類、對象的屬性、方法都可以動態(tài)增加和修改。

給類動態(tài)添加屬性和方法,語法:類名.屬性=屬性 類名.方法名=函數(shù)名

注意:動態(tài)添加的方法,要加上self屬性

 

class Dog:
    name = None

    def say(self):
        print(f"{self.name}:汪汪")


def action_func(self):
    print(f"{self.name}:還能跑,年齡:{self.age}")


dog = Dog()
dog.name = "jack"
dog.say()
Dog.age = 11  # 給類動態(tài)添加age屬性
Dog.action = action_func  # 給類動態(tài)添加方法action
dog.action()

 

運行輸出:

 

jack:汪汪
jack:還能跑,年齡:11

 

給對象動態(tài)添加屬性和方法(其他對象作用不到)

給對象動態(tài)添加屬性和方法,語法:對象.屬性=屬性 對象.方法名=函數(shù)名

 

class Dog:
    name = None

    def say(self):
        print(f"{self.name}:汪汪")


def action_func():
    print("還能跑")


dog = Dog()
dog.name = "jack"
dog.say()

dog.age = 11  # 給對象動態(tài)添加age屬性
dog.action = action_func  # 給對象動態(tài)添加方法action
dog.action()

dog2 = Dog()
dog2.name = "marry"
# print(dog2.age) # 報錯 dog2沒有age屬性
# dog2.action()  # 報錯 dog2沒有action方法

 

運行輸出:

 

jack:汪汪
還能跑

 

 

 

轉載自: