您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)python如何判斷兩個(gè)字符串是否相同,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
python中,判斷兩個(gè)字符串是否相等或一樣,可以使用==或者is來判斷;判斷不一樣可以使用 is not。
示例
python學(xué)習(xí)網(wǎng),大量的免費(fèi)python視頻教程,歡迎在線學(xué)習(xí)!
使用注意事項(xiàng)
1.有時(shí)候兩個(gè)字符串打印出來看著一樣,但是判斷卻是False?如果兩個(gè)字符串末尾有其他符號(hào),比如回車‘\n’,print的時(shí)候無法發(fā)現(xiàn)的,所以需要strip:
2.有時(shí)候==判斷是 True ,is 判斷卻是 False?
這是因?yàn)閮蓚€(gè)字符串來自不同的內(nèi)存塊,內(nèi)存地址不一樣
id() 函數(shù)用于獲取對(duì)象的內(nèi)存地址。
(ob1 is ob2) 等價(jià)于 (id(ob1) == id(ob2)) id函數(shù)可以獲得對(duì)象的內(nèi)存地址,如果兩個(gè)對(duì)象的內(nèi)存地址是一樣的,那么這兩個(gè)對(duì)象肯定是一個(gè)對(duì)象。和is是等價(jià)的.
3.還有一種情況是兩個(gè)對(duì)象用is判斷是False,用id判斷卻是True。原理比較復(fù)雜,如下:
In [1]: def bar(self, x): ...: return self.x + y ...: In [2]: class Foo(object): ...: x = 9 ...: def __init__(self ,x): ...: self.x = x ...: bar = bar ...: In [3]: foo = Foo(5) In [4]: foo.bar is Foo.bar Out[4]: False In [5]: id(foo.bar) == id(Foo.bar) Out[5]: True
上述就是小編為大家分享的python如何判斷兩個(gè)字符串是否相同了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。