在python中is和==都說(shuō)常用的運(yùn)算符之一,主要用于檢測(cè)兩個(gè)變量是否相等,返回True或者False,具體區(qū)別在哪呢?
創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司一直秉承“誠(chéng)信做人,踏實(shí)做事”的原則,不欺瞞客戶(hù),是我們最起碼的底線(xiàn)! 以服務(wù)為基礎(chǔ),以質(zhì)量求生存,以技術(shù)求發(fā)展,成交一個(gè)客戶(hù)多一個(gè)朋友!專(zhuān)注中小微企業(yè)官網(wǎng)定制,成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè),塑造企業(yè)網(wǎng)絡(luò)形象打造互聯(lián)網(wǎng)企業(yè)效應(yīng)。在講解is和==區(qū)別直接先講解一下內(nèi)置函數(shù)id(),其實(shí)在文章?python可變數(shù)據(jù)類(lèi)型和不可變數(shù)據(jù)類(lèi)型?中也對(duì)內(nèi)置函數(shù)id()有過(guò)講解,主要用于獲取變量的內(nèi)存地址!關(guān)于內(nèi)存現(xiàn)在不做過(guò)多講解,你可以把內(nèi)存地址當(dāng)作一串?dāng)?shù)字符號(hào),內(nèi)存地址就好比每個(gè)人都有一個(gè)身份證號(hào)碼一樣!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:何以解憂(yōu) @Blog(個(gè)人博客地址): shuopython.com @WeChat Official Account(微信公眾號(hào)):猿說(shuō)python @Github:www.github.com ? @File:python_is.py @Time:2019/10/26:25 ? @Motto:不積跬步無(wú)以至千里,不積小流無(wú)以成江海,程序人生的精彩需要堅(jiān)持不懈地積累! """ ? a = 5 b = False c = "hello" ? print("a內(nèi)存地址:{}".format(id(a))) print("b內(nèi)存地址:{}".format(id(b))) print("c內(nèi)存地址:{}".format(id(c))) |
輸出結(jié)果:
1 2 3 | a內(nèi)存地址:1784504608 b內(nèi)存地址:1784012992 c內(nèi)存地址:2126520897696 |
?
如果兩個(gè)變量的值相等,那么運(yùn)算符 == 成立,返回True;反之返回False;示例代碼如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | a = 3 b = 3 print(a==b) ? # 整數(shù)與浮點(diǎn)數(shù)的比較 a = 3 b = 3.0 print(a==b) ? a = 3 b = 2.9999 print(a==b) ? # 字符串比較 a = "hello world" b = "HELLO WORLD" c = "hello " d = "hello world" print(a==b,a==c,b==c,a==d) |
輸出結(jié)果:
1 2 3 4 | True True False False False False True |
?
?
1.兩個(gè)變量的值相等;
2.變量地址也相同(可以通過(guò)內(nèi)置函數(shù)id獲取變量?jī)?nèi)存地址);
如果同時(shí)滿(mǎn)足以上兩個(gè)條件,運(yùn)算符 is 才成立,返回True;反之,不滿(mǎn)足其中任何一個(gè)條件都會(huì)返回False;示例代碼如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | a = 333333 b = 333333.0 print(id(a)) print(id(b)) ? print(a is b) print("***"*20) ? a = 3 b = 3 print(id(a)) print(id(b)) ? print(a is b) print("***"*20) ? a = "hello world" b = "HELLO WORLD" c = "hello " d = "hello world" print(id(a)) print(id(b)) print(id(c)) print(id(d)) ? print(a is b,a is c,b is c,a is d) |
輸出結(jié)果:
1 2 3 4 5 6 7 8 9 10 11 12 13 | 2039213240016 2039234381168 False ************************************************************ 1784504544 1784504544 True ************************************************************ 2039217328240 2039217328176 2039217247376 2039217328240 False False False True |
?
?
1.python可變數(shù)據(jù)類(lèi)型和不可變數(shù)據(jù)類(lèi)型
2.python全局變量和局部變量
3.python字符串/列表/元組/字典之間的相互轉(zhuǎn)換
?
轉(zhuǎn)載請(qǐng)注明:猿說(shuō)Python???python is和==區(qū)別