1 #類(Class): 用來描述具有相同的屬性和方法的對象的集合。它定義了該集合中每個對象所共有的屬性和方法。 2 #對象:它是類的實例化。 3 #方法:類中定義的函數。 4 5 #類(Class) 由3個部分構成: 6 ''' 7 類的名稱:類名 8 類的屬性:指對象的特征(一組數據) 9 類的方法:允許對象進行操作的方法 (行為/功能) 10 ''' 11 12 # Python 3.x中取消了經典類,默認都是新式類。 13 # 新式類的語法 -> class 類名(object): pass 14 15 # 類對象支持兩種操作:屬性引用 和 實例化。 16 # 屬性引用的語法:obj.屬性 17 # 類實例化的語法:obj = 類名() 18 # 類中方法的調用:obj.方法名() 19 20 21 # 下面分析新式類的2種常見形式: 22 23 #例1: 24 #自定義一個類student 25 class student(object): 26 def speak(self): ## 哪個對象調用了這個方法,self就是那個對象;可以把self理解為一個形參 27 print("%s 說:我今年%s歲" % (self.name, self.age)) 28 29 #類student 實例化一個對象john 30 john = student() 31 # 給對象添加屬性 32 john.name = "約翰" 33 john.age = 19 34 # 調用類中的 speak()方法 35 john.speak() 36 #<<<約翰 說:我今年19歲 37 38 39 #例2: 40 class student(object): 41 # 定義構造方法 42 def __init__(self, n, a): #__init__() 是類的初始化方法;它在類的實例化操作后 會自動調用,不需要手動調用; 43 # 設置屬性 44 self.name = n 45 self.age = a 46 # 定義普通方法 47 def speak(self): 48 print("%s 說:我今年%s歲" % (self.name, self.age)) 49 50 #類student 實例化一個對象john 51 john = student("約翰",19) 52 53 # 調用類中的 speak()方法 54 john.speak() 55 #>>>約翰 說:我今年19歲 56 57 # 在python中使用__開頭 並以__結尾的方法,稱之為魔法方法; 58 # __init__(self) 是類的初始化方法,也稱構造方法,是一種特殊的魔法方法。 59 # __init__(self)在實例化后,會自動調用,而不用手動調用,所以一般把屬性設置在_init__()里。 60 # 常用到的魔法方法還有:__str__(self) 、 __del__(self)等。 61 62 ## __str__(self) 63 class student(object): 64 # 定義構造方法 65 def __init__(self, n, a): 66 # 設置屬性 67 self.name = n 68 self.age = a 69 70 # 輸出一個字符串(追蹤對象屬性信息變化) 71 def __str__(self): # __str__(self)不可以添加參數(形參) 72 return "名字:%s 年齡:%d" % (self.name, self.age) 73 74 # 實例化一個對象john 75 john = student("約翰",19) 76 77 # 當使用print輸出對象時,只要自己定義了__str__(self)方法,那么就會打印從在這個方法中return的數據 78 print(john) 79 #>>>名字:約翰 年齡:19 80 81 ———————————————— 82 版權聲明:本文為CSDN博主「pdstar」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。 83 原文鏈接:https://blog.csdn.net/pdstar/article/details/90900944