以下都是自己的一些學習筆記,可能有寫的不對的地方,還望各位大佬體諒和加以指正。
Python 是一種面向對象的編程語言。
Python 中的幾乎所有東西都是對象,擁有屬性和方法。
類(Class)類似對象構造函數,或者是用於創建對象的“藍圖”。
創建類
如需創建類,請使用 class
關鍵字:
使用名為 x 的屬性,創建一個名為 MyClass 的類:
class MyClass:
x = 5
現在我們可以使用名為 myClass 的類來創建對象:
創建一個名為 p1 的對象,並打印 x 的值:
p1 = MyClass()
print(p1.x)
上面的例子是最簡單形式的類和對象,在實際應用程序中並不真正有用。
要理解類的含義,我們必須先了解內置的 __init__()
函數。
所有類都有一個名為 __init__()
的函數,它始終在啟動類時執行。
使用 __init__()
函數將值賦給對象屬性,或者在創建對象時需要執行的其他操作:
創建名為 Person 的類,使用 __init__()
函數為 name 和 age 賦值:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p1 = Person("Bill", 63)
print(p1.name)
print(p1.age)
注意
:每次使用類創建新對象時,都會自動調用 __init__()
函數。
對象也可以包含方法。對象中的方法是屬於該對象的函數。
讓我們在 Person 類中創建方法:
插入一個打印問候語的函數,並在 p1 對象上執行它:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def myfunc(self):
print("Hello my name is " + self.name)
p1 = Person("Bill", 63)
p1.myfunc()
Tips:self
參數是對類的當前實例的引用,用於訪問屬於該類的變量。
self
參數是對類的當前實例的引用,用於訪問屬於該類的變量。
它不必被命名為 self
,您可以隨意調用它,但它必須是類中任意函數的首個參數:
使用單詞 mysillyobject 和 abc 代替 self
:
class Person:
def __init__(mysillyobject, name, age):
mysillyobject.name = name
mysillyobject.age = age
def myfunc(abc):
print("Hello my name is " + abc.name)
p1 = Person("Bill", 63)
p1.myfunc()
您可以這樣修改對象的屬性:
把 p1 的年齡設置為 40:
p1.age = 40
您可以使用 del
關鍵字刪除對象的屬性:
刪除 p1 對象的 age 屬性:
del p1.age
使用 del
關鍵字刪除對象:
刪除 p1 對象:
del p1
類定義不能為空,但是如果您處於某種原因寫了無內容的類定義語句,請使用 pass 語句來避免錯誤。
class Person:
pass
python 是一個面向對象的編程語言,想要創建一個類十分的容易。
創建一個簡單的類:
class MyClass():
def __init__(self, name):
self.name = name
def print():
print(self.name)
myclass = MyClass('tom')
myclass.print()