亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

徹底搞懂Python一切皆對(duì)象!!!

系統(tǒng) 2079 0

一切皆對(duì)象

    • 前言
    • 簡(jiǎn)述
      • Python的一等公民
      • type、object和class的關(guān)系
    • 總結(jié)


前言

猶記得當(dāng)初學(xué)習(xí)Python的時(shí)候,對(duì)于 Python一切皆對(duì)象 很是懵逼,因?yàn)镻ython是面向?qū)ο蟮膭?dòng)態(tài)型語(yǔ)言,而在函數(shù)及高階函數(shù)的應(yīng)用中,如若對(duì)于一切皆對(duì)象不是有很透徹的了解,基礎(chǔ)不是那么牢固的話(huà),那么對(duì)于今后的Python進(jìn)階而言,就有點(diǎn)拖后腿了,鑒于有朋友跟我聯(lián)系說(shuō),對(duì)于一切皆對(duì)象掌握的不是太牢固,那么, 木子的本篇博客就對(duì)此知識(shí)點(diǎn)進(jìn)行概括總結(jié)。
如有不當(dāng)之處,還望各位大佬指正。


簡(jiǎn)述

長(zhǎng)話(huà)短說(shuō),本文主要針對(duì) Python一切皆對(duì)象 來(lái)討論,主要從以下兩個(gè)方面來(lái)論述:

Python的一等公民

type、object和class的關(guān)系

對(duì)于Python的常見(jiàn)內(nèi)置類(lèi)型,本篇就不做詳細(xì)闡述

內(nèi)置類(lèi)型:
None(全局只有一個(gè))
數(shù)值類(lèi)型:int、float、complax(復(fù)數(shù))、bool
迭代類(lèi)型
序列類(lèi)型:list、bytes、range、tuple、str、array
映射類(lèi)型:dict
集合類(lèi)型:set、frozenset
上下文管理類(lèi)型:with


Python的一等公民

何為一等公民?

  • 可以賦值給一個(gè)變量
  • 可以添加到集合對(duì)象中
  • 可以作為參數(shù)傳遞給函數(shù)
  • 可以當(dāng)做函數(shù)的返回值

針對(duì)賦值給變量及添加到集合對(duì)象中,代碼予以展示:

            
              def func(name='Python'):
    print(f'the func is {name}')


class Test:
    def __init__(self):
        print(f'the class is {Test.__name__}')

obj_list = []
obj_list.append(func)
obj_list.append(Test)

for item in obj_list:							# 添加至集合對(duì)象中
    print(item())

            
          

那么上述例子,代碼運(yùn)行結(jié)果如下:

            
              the func is Python								# 函數(shù)func運(yùn)行,打印結(jié)果
None											# 函數(shù)func因沒(méi)有return,返回None
the class is Test								# 類(lèi)Test運(yùn)行,打印結(jié)果
<__main__.Test object at 0x0000024AB34526A0>	# 類(lèi)Test運(yùn)行,因沒(méi)有返回值,調(diào)用item(),返回類(lèi)Test的對(duì)象

            
          

那么對(duì)于可以作為參數(shù)傳遞,以下代碼展示:

            
              def func(name='Python'):
    print(f'the func is {name}')

def decorator_func():
    print(f'the decorator_func is running')
    return func									# 返回函數(shù)func

my_test = decorator_func()
my_test('木子的三維世界')						# 傳遞參數(shù),調(diào)用func

            
          

上述代碼運(yùn)行結(jié)果如下:

            
              the decorator_func is running
the func is 木子的三維世界

            
          

type、object和class的關(guān)系

上面的代碼是演示何為Python的一等公民,那么對(duì)于為什么Python一切皆對(duì)象,想必有些道友還是有點(diǎn)不太懂,那么重點(diǎn)來(lái)了,了解完type、object和class后,木子覺(jué)得大家應(yīng)該就可以徹底hold住了。
為便于理解,代碼予以展示:

            
              # 示例如下
a=2019
b="一切皆對(duì)象"
print(type(2019))
print(type(int))
print(type(b))
print(type(str))

class Student:
    pass

stu = Student()
print(type(stu))
print(type(Student))
print(int.__bases__)
print(str.__bases__)
print(Student.__bases__)
print(type.__bases__)
print(object.__bases__)
print(type(object))
print(type(type))

            
          

上面代碼,運(yùn)行結(jié)果如下:

            
              
                									# 2019是由int這個(gè)類(lèi)創(chuàng)建的實(shí)例

                
                  									# int這個(gè)類(lèi)是由type這個(gè)類(lèi)創(chuàng)建的實(shí)例

                  
                    									# 同上

                    
                      
                        						# stu是類(lèi)Student創(chuàng)建的實(shí)例

                        
                          									# 類(lèi)Student是由type這個(gè)類(lèi)創(chuàng)建的實(shí)例
(
                          
                            ,)								# 類(lèi)int的基類(lèi)是object這個(gè)類(lèi)
(
                            
                              ,)								# 同上
(
                              
                                ,)								# 同上
(
                                
                                  ,)								# 重點(diǎn):類(lèi)type的基類(lèi)也是object這個(gè)基類(lèi)
()												# 重點(diǎn):類(lèi)object沒(méi)有基類(lèi)

                                  
                                    									# 難點(diǎn):類(lèi)object是由類(lèi)type創(chuàng)建的實(shí)例

                                    
                                      									# 難點(diǎn):類(lèi)type是由type類(lèi)自身創(chuàng)建的實(shí)例

                                    
                                  
                                
                              
                            
                          
                        
                      
                    
                  
                
              
            
          

對(duì)于上面的代碼,我們可以得出以下結(jié)論:

  1. 類(lèi)type產(chǎn)生int實(shí)例,類(lèi)int又有了2019這樣的實(shí)例
  2. 類(lèi)object是最頂層的基類(lèi)
  3. type也是一個(gè)類(lèi),同時(shí)也是一個(gè)對(duì)象

想必有些道友,看到上面的代碼,已經(jīng)有點(diǎn)懵逼了。請(qǐng)看下圖:
徹底搞懂Python一切皆對(duì)象!!!_第1張圖片
對(duì)于上面圖片的 解讀如下

  1. object是一切對(duì)象:list、str、dict、tuple的基類(lèi),同時(shí)object是type的實(shí)例
  2. 類(lèi)type是自身的實(shí)例,同時(shí)type也繼承自object類(lèi)
  3. 由結(jié)論1和結(jié)論2,得出一切皆對(duì)象,同時(shí)一切皆繼承自object類(lèi)

總結(jié)

Python一切皆對(duì)象對(duì)于函數(shù)式編程,以及Python各種高階用法有很大幫助。
如果哪位道友還不是很清楚,那么 多看看上面的圖片 ,沒(méi)事兒多看看,多看看不壞事兒。。。好了,話(huà)又開(kāi)始多了

那么想必各位道友看到這里,已經(jīng)對(duì)于Python一切皆對(duì)象有了比較清的認(rèn)知,后續(xù)木子會(huì)更新一篇 關(guān)于Python元類(lèi)的博客 ,今天也算是做個(gè)鋪墊。

備注:為何type類(lèi)可以自身的實(shí)例,有興趣的道友可以了解下指針的概念。

時(shí)候不早了,睡覺(jué)睡覺(jué),明天周一上班。。。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 五月婷婷视频在线 | 亚洲第一se情网站 | 免费永久国产在线视频 | 香蕉视频毛片 | 成 人 免费 黄 色 视频 | 日韩视频中文字幕 | 免费污视频在线观看 | 日本高清免费毛片久久看 | 国产精品白丝喷水在线观看 | 麻豆国产高清精品国在线 | 亚洲高清在线观看播放 | 久久国产小视频 | 99视频在线精品免费 | 亚洲综合色婷婷中文字幕 | 欧美啊v在线观看 | 色婷婷91| 99精品国产成人一区二区在线 | 亚洲精品区在线播放一区二区 | 国产色影院 | 久久精品国产74国产 | 国产成人综合久久精品红 | 亚洲成人在线视频观看 | 久久久久久九 | 国产99视频精品免视看9 | 99视频精品全部免费免费观 | 99久久综合狠狠综合久久 | 国产乱叫456在线 | 精品视频一区二区三区在线播放 | 九九九精品 | 九九热精品视频在线播放 | 日本亚洲欧洲免费无码 | 456性欧美欧美在线视频 | 你懂的国产精品 | 99精品高清视频一区二区 | 偷偷狠狠的日日2020 | 综合久久久久久中文字幕 | 成年女人在线观看 | 国产极品福利视频在线观看 | 成人毛片基地 | 日韩中文字幕在线观看视频 | 91视频免费播放 |