国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python類的方法屬性與方法屬性的動態綁定代碼詳解

2020-02-16 11:20:05
字體:
來源:轉載
供稿:網友

動態語言與靜態語言有很多不同,最大的特性之一就是可以實現動態的對類和實例進行修改,在Python中,我們創建了一個類后可以對實例和類綁定心的方法或者屬性,實現動態綁定。

最近在學習python,純粹是自己的興趣愛好,然而并沒有系統地看python編程書籍,覺得上面描述過于繁瑣,在網站找了一些學習的網站,發現廖雪峰老師的網站上面的學習資源很不錯,而且言簡意賅,提取了一些python中的重要的語法和案例。重要的是可以在線測試python的運行代碼,缺點就是沒有系統的看python的書籍,不能及時的將知識的碎片化聯系在一起,這也是看書與不看書的區別。尤其是在python類與實例的方法的調用中覺得云里霧里,思考之后將自己的想法記錄下,一來加深自己理解,鞏固自己記憶,而來幫助一些想要學習python的朋友理解這門抽象的語言,理解不當之處,希望大家給予指正,謝謝。

1、python中的類與實例

先定義一個類

class Student(object):

初始化,將一些必要屬性綁定到Student類中

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

在內部定義一個函數,實現對傳入實例的屬性操作,將數據進行封裝在內部,這些封裝的數據本身適合類進行關聯的,稱之為類的方法。

def print_score(self):    print('%s: %s' % (self.name, self.score))

2、對實例擁有的屬性與方法的調用

傳入一個實例

bart = Student('Bart Simpson', 59)

對屬性的調用

>>> bart.name'Bart Simpson'

對方法的調用

>>> bart.print_score()Bart Simpson: 59

都沒有問題,以下來理解python中實例中屬性與方法的綁定

3、python中實例屬性與方法綁定

先定義一個類

class Student(object):  pass

傳入一個實例

s = Student()

動態給實例綁定一個屬性

s.name = 'Michael' 

接下來給實例綁定方法

先定義一個函數

def set_age(self, age): # 定義一個函數作為實例方法  self.age = age

對實例的方法綁定

from types import MethodTypes.set_age = MethodType(set_age, s) # 給實例綁定一個方法s.set_age(25) # 調用實例方法>>> s.age # 測試結果25

對類的方法綁定

 def set_score(self, score):#定義一個函數作為類的方法   self.score = score Student.set_score = set_score#綁定方法

廖老師在后面補充了一句:set_score方法可以直接定義在class中,但動態綁定允許我們在程序運行的過程中動態給class加上功能,這在靜態語言中很難實現。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潞西市| 凤翔县| 政和县| 喜德县| 民乐县| 北辰区| 广丰县| 吴堡县| 射洪县| 佛坪县| 甘孜县| 广安市| 和静县| 酒泉市| 镇安县| 蓬莱市| 界首市| 延寿县| 隆德县| 邵武市| 白水县| 克东县| 德州市| 中西区| 洛扎县| 开鲁县| 邵阳县| 淮安市| 聊城市| 江油市| 若羌县| 龙川县| 法库县| 临江市| 五峰| 罗山县| 社会| 新安县| 乃东县| 达州市| 庐江县|