這篇文章主要為大家展示了“Python中is語(yǔ)法的示例分析”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Python中is語(yǔ)法的示例分析”這篇文章吧。
企業(yè)建站必須是能夠以充分展現(xiàn)企業(yè)形象為主要目的,是企業(yè)文化與產(chǎn)品對(duì)外擴(kuò)展宣傳的重要窗口,一個(gè)合格的網(wǎng)站不僅僅能為公司帶來(lái)巨大的互聯(lián)網(wǎng)上的收集和信息發(fā)布平臺(tái),成都創(chuàng)新互聯(lián)面向各種領(lǐng)域:輕質(zhì)隔墻板等成都網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷推廣解決方案、網(wǎng)站設(shè)計(jì)等建站排名服務(wù)。起步
Python 的成功一個(gè)原因是它的可讀性,代碼清晰易懂,更容易被人類所理解,但有時(shí)可讀性會(huì)產(chǎn)生誤解。
假如要判斷一個(gè)變量是不是 17,那可以:
if x is 17:
x 是 17 肯定是比 x == 17 更加口語(yǔ)化的。
is的誤解
但是如果你嘗試:
if name is "weapon":
這個(gè)判斷不見(jiàn)得管用。is 用來(lái)檢查左側(cè)和右側(cè)是否是完全相同的對(duì)象。如果有兩個(gè)不同的字符串對(duì)象,每個(gè)對(duì)象的值是相同的,應(yīng)該使用 == 來(lái)判斷,因?yàn)?is 的用法與口語(yǔ)上的區(qū)別挺大的:
if 999 + 1 is 1000: # False
正因?yàn)檫@樣的誤解,在 if 判斷條件上容易讓初學(xué)者掉坑:
answer = 'yes' if answer is 'y' or 'yes':
你會(huì)發(fā)現(xiàn)不管變量是什么值,判斷都是為真。因?yàn)?is 的優(yōu)先級(jí)高,相當(dāng)于 if (answer is 'y') or ('yes') 。
正確的方法應(yīng)該是 if answer == 'y' or answer == 'yes' 或者 if answer in ('y', 'yes') 。
is not 上的混淆
>>> 'something' is not None True >>> 'something' is (not None) False
is not 是一個(gè)二元運(yùn)算符,應(yīng)該視為一個(gè)整體,不要因?yàn)橹虚g空格而當(dāng)成兩個(gè)詞。底層上,它們也是一個(gè)操作符,CPython 將 s is not None 翻譯成的字節(jié)碼為:
6 LOAD_NAME 0 (s) 8 LOAD_CONST 1 (None) 10 COMPARE_OP 9 (is not)
is not 是對(duì) is 相對(duì)應(yīng)的操作符。也可以視為是將 is 判斷的結(jié)果再進(jìn)行取反。
以上是“Python中is語(yǔ)法的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。