專欄導(dǎo)讀
? 作者簡(jiǎn)介:i阿極,CSDN Python領(lǐng)域新星創(chuàng)作者,專注于分享python領(lǐng)域知識(shí)。
? 本文錄入于《數(shù)據(jù)分析之道》,本專欄針對(duì)大學(xué)生、初級(jí)數(shù)據(jù)分析工程師精心打造,對(duì)python基礎(chǔ)知識(shí)點(diǎn)逐一擊破,不斷學(xué)習(xí),提升自我。
? 訂閱后,可以閱讀《數(shù)據(jù)分析之道》中全部文章內(nèi)容,包含python基礎(chǔ)語(yǔ)法、數(shù)據(jù)結(jié)構(gòu)和文件操作,科學(xué)計(jì)算,實(shí)現(xiàn)文件內(nèi)容操作,實(shí)現(xiàn)數(shù)據(jù)可視化等等。
? 其他專欄:《數(shù)據(jù)分析案例》 ,《機(jī)器學(xué)習(xí)案例》??????如果覺得文章不錯(cuò)或能幫助到你學(xué)習(xí),可以點(diǎn)贊??收藏??評(píng)論??+關(guān)注哦!??????
??????如果有小伙伴需要數(shù)據(jù)集和學(xué)習(xí)交流,文章下方有交流學(xué)習(xí)區(qū)!一起學(xué)習(xí)進(jìn)步!??
訂閱專欄閱讀:《數(shù)據(jù)分析之道》 |
---|
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(一)】字符串 |
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(二)】列表 |
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(三)】元組 |
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(四)】字典 |
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(五)】集合 |
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(六)】函數(shù) |
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(七)】高級(jí)函數(shù) |
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(八)】循環(huán)語(yǔ)句 |
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(九)】推導(dǎo)式 |
【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(十)】Lambda函數(shù) |
1、簡(jiǎn)介
Python 是一種面向?qū)ο蟮木幊陶Z(yǔ)言,它提供了豐富的面向?qū)ο缶幊烫匦院驼Z(yǔ)法。面向?qū)ο缶幊蹋∣OP)是一種編程范式,它將數(shù)據(jù)和與之相關(guān)的操作封裝在對(duì)象中,通過(guò)定義類和實(shí)例化對(duì)象來(lái)實(shí)現(xiàn)程序的組織和設(shè)計(jì)。
在 Python 中,面向?qū)ο缶幊痰暮诵母拍畎悾–lass)、對(duì)象(Object)、屬性(Attribute)、方法(Method)、繼承(Inheritance)和多態(tài)(Polymorphism)等。
2、類與對(duì)象
類是對(duì)象的藍(lán)圖或模板,它定義了一組屬性和方法,用于描述具有相同特征和行為的對(duì)象的集合。對(duì)象是類的實(shí)例,它具有類定義的屬性和方法。
在 Python 中,定義類使用 class 關(guān)鍵字,通過(guò)類創(chuàng)建對(duì)象的過(guò)程稱為實(shí)例化。以下是定義一個(gè)簡(jiǎn)單類的示例:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def greet(self):
print(f"Hello, my name is {self.name}.")
# 創(chuàng)建對(duì)象
person1 = Person("Alice", 25)
person2 = Person("Bob", 30)
# 調(diào)用對(duì)象的方法
person1.greet()
person2.greet()
Person 是一個(gè)類,它有兩個(gè)屬性 name 和 age,以及一個(gè)方法 greet。通過(guò)調(diào)用 Person 類的構(gòu)造函數(shù) init,可以創(chuàng)建 Person 類的實(shí)例(對(duì)象)。每個(gè)對(duì)象都有自己的屬性值,通過(guò) self 關(guān)鍵字來(lái)引用。
3、屬性和方法
屬性是對(duì)象的特征或狀態(tài),用于存儲(chǔ)對(duì)象的數(shù)據(jù)。方法是對(duì)象的行為或操作,用于實(shí)現(xiàn)對(duì)象的功能。
在類中定義屬性和方法時(shí),需要使用特殊的 self 參數(shù),它代表對(duì)象自身。通過(guò) self,可以訪問和操作對(duì)象的屬性和方法。
以下是一個(gè)包含屬性和方法的類示例:
class Rectangle:
def __init__(self, width, height):
self.width = width
self.height = height
def area(self):
return self.width * self.height
def perimeter(self):
return 2 * (self.width + self.height)
# 創(chuàng)建對(duì)象
rectangle = Rectangle(5, 3)
# 調(diào)用對(duì)象的方法和訪問屬性
print("Area:", rectangle.area())
print("Perimeter:", rectangle.perimeter())
print("Width:", rectangle.width)
print("Height:", rectangle.height)
Rectangle 類有兩個(gè)屬性 width 和 height,以及兩個(gè)方法 area 和 perimeter。通過(guò)創(chuàng)建 Rectangle 對(duì)象并調(diào)用對(duì)象的方法,可以計(jì)算矩形的面積和周長(zhǎng),以及訪問矩形的寬度和高度。
4、繼承
繼承是面向?qū)ο缶幊讨械囊粋€(gè)重要概念,它允許一個(gè)類繼承另一個(gè)類的屬性和方法。通過(guò)繼承,可以建立類之間的層次結(jié)構(gòu),從而實(shí)現(xiàn)代碼的重用和擴(kuò)展。
在 Python 中,使用 class ChildClass(ParentClass) 的形式來(lái)實(shí)現(xiàn)繼承。子類(派生類)繼承了父類(基類)的屬性和方法,并可以定義自己的新屬性和方法。
以下是一個(gè)繼承的示例:
class Animal:
def __init__(self, name):
self.name = name
def eat(self):
print("Animal is eating.")
class Dog(Animal):
def bark(self):
print("Dog is barking.")
# 創(chuàng)建對(duì)象
animal = Animal("Generic Animal")
dog = Dog("Tommy")
# 調(diào)用繼承的方法和子類的方法
animal.eat()
dog.eat()
dog.bark()
Animal 是一個(gè)基類,Dog 是一個(gè)派生類,它繼承了 Animal 類的屬性和方法。通過(guò)創(chuàng)建 Animal 和 Dog 對(duì)象,并調(diào)用它們的方法,可以看到派生類可以訪問基類的方法,同時(shí)還可以定義自己的新方法。
5、多態(tài)
多態(tài)是面向?qū)ο缶幊讨械牧硪粋€(gè)重要概念,它允許使用相同的接口來(lái)處理不同類型的對(duì)象,而不需要知道對(duì)象的具體類型。
在 Python 中,多態(tài)性是通過(guò)方法重寫(Method Overriding)實(shí)現(xiàn)的。子類可以重寫父類的方法,從而在相同的方法調(diào)用下表現(xiàn)出不同的行為。
以下是一個(gè)多態(tài)的示例:
class Shape:
def area(self):
pass
class Rectangle(Shape):
def __init__(self, width, height):
self.width = width
self.height = height
def area(self):
return self.width * self.height
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def area(self):
return 3.14 * self.radius ** 2
# 創(chuàng)建對(duì)象
rectangle = Rectangle(5, 3)
circle = Circle(4)
# 調(diào)用多態(tài)的方法
shapes = [rectangle, circle]
for shape in shapes:
print("Area:", shape.area())
Shape 是一個(gè)基類,Rectangle 和 Circle 是派生類。它們都實(shí)現(xiàn)了 Shape 類的 area 方法,但具體的實(shí)現(xiàn)不同。通過(guò)創(chuàng)建 Rectangle 和 Circle 對(duì)象,并將它們放入列表中,然后遍歷列表并調(diào)用 area 方法,可以看到相同的方法調(diào)用根據(jù)對(duì)象的類型表現(xiàn)出不同的行為。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-451174.html
??文章下方有交流學(xué)習(xí)區(qū)!一起學(xué)習(xí)進(jìn)步!??????
??首發(fā)CSDN博客,創(chuàng)作不易,如果覺得文章不錯(cuò),可以點(diǎn)贊??收藏??評(píng)論??
??你的支持和鼓勵(lì)是我創(chuàng)作的動(dòng)力???文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-451174.html
到了這里,關(guān)于【數(shù)據(jù)分析之道-基礎(chǔ)知識(shí)(十一)】面向?qū)ο蟮奈恼戮徒榻B完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!