日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
關(guān)于Python類型和對象的簡介-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序制作、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了名山免費(fèi)建站歡迎大家使用!

小編給大家分享一下關(guān)于Python類型和對象的簡介,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

類型與對象

一點(diǎn)基礎(chǔ)理論:

對象代表現(xiàn)實(shí)世界中像轎車、狗、自行車這些事物。對象具有數(shù)據(jù)和行為兩個(gè)主要特征。

在面向?qū)ο缶幊讨校覀儼褦?shù)據(jù)當(dāng)作屬性,把行為當(dāng)作方法。即:

數(shù)據(jù) → 屬性 和 行為 → 方法

類型是創(chuàng)造單個(gè)對象實(shí)例的藍(lán)本。在現(xiàn)實(shí)世界中,我們經(jīng)常發(fā)現(xiàn)很多對象實(shí)例擁有相同的類型,比如轎車。他們都具有相同的構(gòu)造和模型(具有發(fā)動(dòng)機(jī),輪子,門等等)。每輛車都是根據(jù)同一張?jiān)O(shè)計(jì)圖制作的,并且具有相同的組成部分。

Python,作為一門面向?qū)ο缶幊痰恼Z言,具有類和對象的概念。

類是藍(lán)圖,對象是模型。

同樣,一個(gè)類,它只是一個(gè)模型,或者一種定義屬性和行為的方法(正如我們在理論部分所討論的)。例如,車輛類有自己的屬性,定義什么是車輛。車輪的數(shù)量、能源的類型、座位容量和大速度都是車輛的屬性。

考慮到這一點(diǎn),讓我們看看類的 Python 語法:

class Vehicle:
    pass

我們用一個(gè)類聲明來定義類?,僅此而已。很簡單,不是嗎?

對象是一個(gè)類的實(shí)例,我們用命名類來創(chuàng)建一個(gè)實(shí)例。

car = Vehicle()
print(car) # <__main__.Vehicle instance at 0x7fb1de6c2638>

這里 ‘car’ 是 ‘Vehicle’ 類的一個(gè)對象(或者說實(shí)例)。

記住,我們的 ‘Vehicle’ 類有四個(gè)屬性:輪子數(shù)量,能源類型,座位容量,和大速度。我們創(chuàng)建一個(gè) ‘Vehicle’ 對象時(shí)設(shè)置所有這些屬性 。所以在這里,我們定義我們的類初始化時(shí)要接收數(shù)據(jù)時(shí):

class Vehicle:
    def __init__(self, number_of_wheels, type_of_tank, seating_capacity, maximum_velocity):
        self.number_of_wheels = number_of_wheels
        self.type_of_tank = type_of_tank
        self.seating_capacity = seating_capacity
        self.maximum_velocity = maximum_velocity

我們使用了 ‘init’方法。我們稱它為構(gòu)造方法。所以創(chuàng)建 ‘vehicle’ 對象時(shí)可以定義這些屬性。假設(shè)我們喜歡 Tesla Model S,我們要?jiǎng)?chuàng)建這種對象。它有 4 個(gè)輪子,使用電能,有 5 個(gè)座位,大時(shí)速 250km/h (155mph)

tesla_model_s = Vehicle(4, 'electric', 5, 250)

4 個(gè) “輪子”+ 電能 “能源”+5 個(gè) “座位”+250km/h “大速度”。

所有屬性都設(shè)置完成了。但是我們?nèi)绾潍@取這些屬性值?我們發(fā)送一個(gè)消息到對象來問他們。 我們稱之為方法。方法是對象的行為。讓我們來實(shí)現(xiàn)它:

class Vehicle:
    def __init__(self, number_of_wheels, type_of_tank, seating_capacity, maximum_velocity):
        self.number_of_wheels = number_of_wheels
        self.type_of_tank = type_of_tank
        self.seating_capacity = seating_capacity
        self.maximum_velocity = maximum_velocity

    def number_of_wheels(self):
        return self.number_of_wheels

    def set_number_of_wheels(self, number):
        self.number_of_wheels = number

這里創(chuàng)建了兩個(gè)方法: number_of_wheels 和 set_number_of_wheels. 我們稱它為 獲取 & 設(shè)置. 因?yàn)榈谝粋€(gè)獲取了屬性值,然后第二個(gè)設(shè)置了一個(gè)新的屬性值。

Python 中,我們可以用 “@property” (“decorator”) 去定義 "getters" 和 “setters”。請看以下代碼:

class Vehicle:
    def __init__(self, number_of_wheels, type_of_tank, seating_capacity, maximum_velocity):
        self.number_of_wheels = number_of_wheels
        self.type_of_tank = type_of_tank
        self.seating_capacity = seating_capacity
        self.maximum_velocity = maximum_velocity

    @property
    def number_of_wheels(self):
        return self.number_of_wheels

    @number_of_wheels.setter
    def number_of_wheels(self, number):
        self.number_of_wheels = number

同時(shí),我們可以使用這些方法作為屬性:

tesla_model_s = Vehicle(4, 'electric', 5, 250)
print(tesla_model_s.number_of_wheels) # 4
tesla_model_s.number_of_wheels = 2 # setting number of wheels to 2
print(tesla_model_s.number_of_wheels) # 2

這個(gè)與定義方法有些許不同。這些方法的工作機(jī)制與屬性不同。例如,當(dāng)我們設(shè)置輪子數(shù)量時(shí),我們需要把 2 賦值給一個(gè)變量,只需要設(shè)置 “number_of_wheels” 的值為 2。這是一種寫 “pythonic”、 ”getter“、“setter” 代碼的方法。

而且同時(shí)我們也可以使用其他方法,比如 “make_noise” 方法。請看下面的例子。

class Vehicle:
    def __init__(self, number_of_wheels, type_of_tank, seating_capacity, maximum_velocity):
        self.number_of_wheels = number_of_wheels
        self.type_of_tank = type_of_tank
        self.seating_capacity = seating_capacity
        self.maximum_velocity = maximum_velocity

    def make_noise(self):
        print('VRUUUUUUUM')

看完了這篇文章,相信你對關(guān)于Python類型和對象的簡介有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!


名稱欄目:關(guān)于Python類型和對象的簡介-創(chuàng)新互聯(lián)
本文來源:http://www.dlmjj.cn/article/depjjs.html