[問題] unicode 字串比對問題

作者: zo6596001 (超帥肥宅)   2017-05-27 22:37:07
哈囉大家好,我剛才寫程式遇到了"兩"個問題。
用某網站的API抓資料下來(資料為Dictionary),想要抓出 浮點數值 非 0 的資料。
for key,value in pNet.returnBalances().items() :
if float(value) is not 0 :
print key + " : " + value
結果 Dictionary 裡面的資料全部都印出來了。 請問一下這要怎麼解決呢?
嘗試把 0 改成 0.00000000 也沒辦法解決這些問題。
第二個問題是
我想把 Dictionary 裡的某個 Key 抓出來,程式碼如下:
for key,value in pNet.returnBalances().items() :
if key is u"BTC" :
print "!!!" + key + " : " + value + "!!!"
結果沒有東西跑出來......
type(key)的結果是 <type 'unicode'>
使用decode("utf-8")也沒辦法解決。
if str(key) is str("BTC")也沒辦法解決,反過來兩個都用decode("utf-8")也沒辦法。
if cmp(key,"BTC") is True 也沒辦法
每種方法加上 \n 也沒辦法解決。
請問這該怎麼解決呢? 為什麼 python 明明兩筆資料看起來完全一樣,但程式卻分辨不出來呢?
作者: Sunal (SSSSSSSSSSSSSSSSSSSSSSS)   2017-05-28 00:04:00
關於第一個問題 你要比value 要用 == !=is 是判斷參考的物件用的第二個問題應該也一樣
作者: CaptainH (Cannon)   2017-05-28 11:00:00
什麼年代還用python2
作者: coeric ( )   2017-05-31 10:23:00
我到現在還是用2.......錯了嗎?T_T

Links booklink

Contact Us: admin [ a t ] ucptt.com