Python中的None與 NULL(即空字符)的區別詳解
1.首先要了解Python的對象的概念:
Python中,萬物皆對象,所有的操作都是針對對象的,那什么是對象,5是一個int對象,‘oblong’是一個str對象,異常也是一個對象,抽象一點是,人,貓,夠也是一個對象
那對于一個對象,它就有包括兩方面的特征: 屬性:去描述它的特征 方法: 它所具有的行為
所以,對象=屬性+方法 (其實方法也是一種屬性,一種區別于數據屬性的可調用屬性
把具有相同屬性和方法的對象就可以歸為一類,即Classl。類就好比是一張藍圖,使用一個類可以創建多個對象實例 即人,貓,狗都屬于哺乳動物類
類是對象的抽象化,對象是類的實例化。類不代表具體的事物,而對象表示具體的事物
類也是有屬性和方法的。
2.數據類型也是對象
實際上Pyhton在面向對象程序設計時,才會有對象這個概念,而在面向過程型程序設計時,我們討論最多的就是數據類型。
Python提供的基本數據類型主要有:布爾類型、整型、浮點型、字符串、列表、元組、集合、字典等
數據類型也可以看做是一個”類“ 每一種數據類型都是一個對象,也具有其自己的屬性和方法
3.Python中的None與 NULL(即空字符)的區別
了解以上概念,就不難理解None 與null的區別
(1)是不同的一種數據類型
>>>type(None)<class ’NoneType’>
表示該值是一個空對象,空值是Python里一個特殊的值,用None表示。None不能理解為0,因為0是有意義的,而None是一個特殊的空值。
>>>type(’’)<class ’’str’>
你可以將None賦值給任何變量,也可以將任何變量賦值給一個None值得對象
(2)判斷的時候 均是False
>>> ff=None>>> if ff: print(’ff is define’)
執行結果:無打印!1
(3)屬性不同
使用dir()函數返回參數的屬性、方法列表。如果參數包含方法dir(),該方法將被調用。如果參數不包含dir(),該方法將最大限度地收集參數信息。
dir(None)[’__bool__’, ’__class__’, ’__delattr__’, ’__dir__’, ’__doc__’, ’__eq__’, ’__format__’, ’__ge__’, ’__getattribute__’, ’__gt__’, ’__hash__’, ’__init__’, ’__le__’, ’__lt__’, ’__ne__’, ’__new__’, ’__reduce__’, ’__reduce_ex__’, ’__repr__’, ’__setattr__’, ’__sizeof__’, ’__str__’, ’__subclasshook__’]1
dir(’’)[’__add__’, ’__class__’, ’__contains__’, ’__delattr__’, ’__dir__’, ’__doc__’, ’__eq__’, ’__format__’, ’__ge__’, ’__getattribute__’, ’__getitem__’, ’__getnewargs__’, ’__gt__’, ’__hash__’, ’__init__’, ’__iter__’, ’__le__’, ’__len__’, ’__lt__’, ’__mod__’, ’__mul__’, ’__ne__’, ’__new__’, ’__reduce__’, ’__reduce_ex__’, ’__repr__’, ’__rmod__’, ’__rmul__’, ’__setattr__’, ’__sizeof__’, ’__str__’, ’__subclasshook__’, ’capitalize’, ’casefold’, ’center’, ’count’, ’encode’, ’endswith’, ’expandtabs’, ’find’, ’format’, ’format_map’, ’index’, ’isalnum’, ’isalpha’, ’isdecimal’, ’isdigit’, ’isidentifier’, ’islower’, ’isnumeric’, ’isprintable’, ’isspace’, ’istitle’, ’isupper’, ’join’, ’ljust’, ’lower’, ’lstrip’, ’maketrans’, ’partition’, ’replace’, ’rfind’, ’rindex’, ’rjust’, ’rpartition’, ’rsplit’, ’rstrip’, ’split’, ’splitlines’, ’startswith’, ’strip’, ’swapcase’, ’title’, ’translate’, ’upper’, ’zfill’]1
總結:
本文解釋了None與 NULL(即空字符)的區別,以及Python中對象,類的概念,以及type(),dir()函數的使用。
到此這篇關于Python中的None與 NULL(即空字符)的區別詳解的文章就介紹到這了,更多相關Python None與 NULL內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章: