中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何理解python中一切皆對象

發布時間:2021-10-11 17:43:07 來源:億速云 閱讀:311 作者:柒染 欄目:大數據

如何理解python中一切皆對象,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

眾所周知python是一款面向對象語言,在python語言中,可以說python的一切皆對象是不會錯的。如果你學過java的話,你也會知道java也是一款面向對象語言,但是對比起來,python才是真正的面向對象語言。

1.何為面向對象

對象可以說是一個具體的事物,但是面向對象并不是與對象面對面,而是用事物的方法來進行操縱。我舉個例子吧,我去飯店吃飯,然后叫服務員點菜,這里呢就可以說是我調用了服務員的點菜的方法,這里的服務員就可以說是一個對象,而我是調用者。點完菜之后,服務員就會去店里叫廚師炒菜,這里呢廚師也是個對象,炒菜是廚師的一個方法。

2.python中的對象

python中一切皆對象,這個不假,因為python的類和函數都被當作是對象,這些都屬于python的一等公民。符合一等公民需要滿足以下四個條件:

  1. 能夠直接賦值給一個變量

  2. 可以添加到集合對象中

  3. 能作為函數參數進行傳遞

  4. 可以作為函數返回值

看到這里,就知道python中是的確是一切皆對象,因為都符合屬于一等公民。

python中的對象都會有三個特征

  • 身份,即是存儲地址,可以通過id()這個方法來查詢

  • 類型,即對象所屬的類型,可以用type()方法來查詢

  • 值,都會有各自的數據

查詢對象的身份

n1 = 1
n2 = 2
print(id(n1))
print(id(n2))
# 下面是結果
1956798624
1956798656

查詢對象的類型

print(type(n1))
print(type(n2))
# 下面是結果
<class 'int'>
<class 'int'>

可以看到兩個類型是都一樣的。當然這里我們可以用isinstance()這個方法來查看對象是否屬于某類型,這里不展開說這個。

3.type,object和class的關系

object是所有類都繼承的,是python的一個基類,但是type也是一個類型來的,而且object是的類型就是type,還有type也是自己的一個實例,說到這里,你可能不相信,不過我們下面會有驗證。type,一個連自己都不肯放過的類,都要自己實現自己的對象的類,其他的類就可想而知了,所以這里更加充分說明python中一切皆對象。

驗證下

print(type(object))
print(type(type))
# 下面是結果
<class 'type'>
<class 'type'>

看到了吧,type是自己的一個實例,后面會更加深入說下對象。

還有python中class,即是類是通過type來生成的,而對象是通過類來生成的,就有下面這層關系:type --> class --> object。下面用代碼來看看

class A():
   pass
a = A()
print(type(a))
print(type(A))
# 下面是結果
<class '__main__.A'>
<class 'type'>

在這里就可以知道type有兩種功能,一個是返回一個對象的類型,另一個是生成一個類。

關于如何理解python中一切皆對象問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁化县| 区。| 潢川县| 彰武县| 山东| 南开区| 唐海县| 酉阳| 卓尼县| 西青区| 陆丰市| 卫辉市| 教育| 驻马店市| 泰来县| 东兰县| 紫云| 体育| 抚远县| 枝江市| 濮阳县| 武冈市| 衡南县| 平利县| 兴仁县| 台南市| 民丰县| 和田市| 揭西县| 镇雄县| 陆丰市| 苏州市| 隆尧县| 阳西县| 保靖县| 肥乡县| 盐津县| 诸城市| 自治县| 将乐县| 南投县|