Python是一種面向?qū)ο蟮木幊陶Z(yǔ)言,它允許我們創(chuàng)建和使用自定義的數(shù)據(jù)類型,稱為類。類是一種抽象的概念,它定義了一組屬性和方法,用來(lái)表示某種事物或行為。類的屬性是變量,用來(lái)存儲(chǔ)對(duì)象的狀態(tài)或特征。類的方法是函數(shù),用來(lái)實(shí)現(xiàn)對(duì)象的功能或行為。
在Python中,我們可以使用class關(guān)鍵字來(lái)定義一個(gè)類,然后使用括號(hào)和冒號(hào)來(lái)開(kāi)始類的主體。類的主體中可以包含屬性和方法的定義,以及一些特殊的方法,如init和str等。init方法是類的構(gòu)造函數(shù),它在創(chuàng)建對(duì)象時(shí)自動(dòng)調(diào)用,用來(lái)初始化對(duì)象的屬性。str方法是類的字符串表示函數(shù),它在打印對(duì)象時(shí)自動(dòng)調(diào)用,用來(lái)返回對(duì)象的描述。
例如,我們可以定義一個(gè)名為Student的類,表示學(xué)生這種事物。Student類有兩個(gè)屬性:name和age,分別表示學(xué)生的姓名和年齡。Student類有一個(gè)方法:introduce,用來(lái)打印學(xué)生的自我介紹。Student類還有一個(gè)init方法,用來(lái)接收name和age兩個(gè)參數(shù),并將它們賦值給對(duì)象的屬性。Student類還有一個(gè)str方法,用來(lái)返回學(xué)生的姓名和年齡。
以下是Student類的定義:
class Student:
def __init__(self, name, age):
self.name = name
self.age = age
def introduce(self):
print(f"Hello, I am {self.name}, and I am {self.age} years old.")
def __str__(self):
return f"Student(name={self.name}, age={self.age})"
在定義了類之后,我們可以使用類名加上括號(hào)和參數(shù)來(lái)創(chuàng)建對(duì)象,也稱為類的實(shí)例。每個(gè)對(duì)象都有自己的屬性和方法,可以通過(guò)點(diǎn)號(hào)來(lái)訪問(wèn)或調(diào)用。例如,我們可以創(chuàng)建兩個(gè)Student對(duì)象,并分別打印它們的屬性和方法:
s1 = Student("Alice", 18)
s2 = Student("Bob", 19)
print(s1.name) # Alice
print(s2.age) # 19
s1.introduce() # Hello, I am Alice, and I am 18 years old.
s2.introduce() # Hello, I am Bob, and I am 19 years old.
print(s1) # Student(name=Alice, age=18)
print(s2) # Student(name=Bob, age=19)
通過(guò)面向?qū)ο蠛皖惖母拍?,我們可以將?fù)雜的問(wèn)題分解為多個(gè)簡(jiǎn)單的模塊,每個(gè)模塊都有自己的職責(zé)和功能。這樣可以提高代碼的可讀性、可維護(hù)性和可復(fù)用性。