本篇文章為大家展示了Python中“is”和“==”的區別是什么,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
相比 C/C++ 、Java 等強類型語言, Python 定義變量的方式就簡單多了。我們只需要給變量起個變量名,而不需要給變量指定類型。
正因為 Python 弱化類型這一概念,所以我們能隨意給變量賦值。值可以是整數,浮點數,字符串,列表等。
a = 1
a = 3.33
a = 'monkey'
a = [1, 2, 3]
凡事都有正反兩面。使用弱類型語言編程,我們可以不需要定義變量類型,可以隨意轉換類型,代碼看起來很簡介。但是在變量判斷是否相等時候,會給我們造成一定困惑。
判斷值相等,是選擇 “is” 還是 “==” 了?
當你了解 Python 的語言特性之后,這個問題就會迎刃而解。在 Python 中,萬物皆為對象。 每個對象有 3 個屬性。分別是:id,type,value。
id 就是對象的內存地址,可以通過內置函數 id() 查看對象引用的地址。
type 表示對象的類型。Python 也是有類型的概念。對于編譯器或者解釋器而言,類型可以協助確保上面那些電荷、字節在程序的運行中始終如一地被理解。我們可以通過內置函數 type() 查看對象的類型。
value 就是對象的值。
綜上所述:
如果我們要判斷兩個變量的值是否相等,需要使用 “==”。一般運用在判斷數值和字符串是否相等。
a = '123'
b = '123'
print(a=b)
>> True
c = 1
d = 2
print(c==d)
>> False
is 則是用來判斷兩個變量的 id 是否相等,當兩個變量的 id 相等時,說明這兩個變量指向的地址是相同的,那么這兩個變量的一切屬性(包括:類型、值)都相同。同時,Python 也規定 None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元組()都相當于 False。所以我們可以使用 is 來判斷變量是否為空。
str = ""
print(str is None)
>> False
print(str is not None)
>> True
上述內容就是Python中“is”和“==”的區別是什么,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。