[問題] find 字串的找到與否的判斷,一定要加上比對嗎?

看板Python作者 (鋼鐵人史塔克)時間7年前 (2018/06/28 05:13), 7年前編輯推噓3(303)
留言6則, 4人參與, 7年前最新討論串1/1
如果 name="00623.jpg" if name.find("_"): print "find _ " 竟然可以印出 find , 沒找到底線,不是會返回 -1值嗎? 一定要寫成 if name.find("_") > 0 才可以嗎? 直覺上find應該直接用就可以判斷找到與否, 但事實上還要做一個比對的動作, 請問有沒有其他find方法可以直接返回true false的, 不然find還有加上一個比較的動作,感覺上有點不方便.. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.251.235.51 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1530133997.A.5D0.html ※ 編輯: ironmanstock (111.251.235.51), 06/28/2018 05:17:17 ※ 編輯: ironmanstock (118.166.175.89), 06/28/2018 06:39:46

06/28 07:57, 7年前 , 1F
if "_" in name:
06/28 07:57, 1F

06/28 10:12, 7年前 , 2F
謝謝,好用
06/28 10:12, 2F

06/28 21:21, 7年前 , 3F
因為只要是非零的值,轉換成boolen時都是true
06/28 21:21, 3F

06/28 21:21, 7年前 , 4F
不過還是一樓的方法比較好
06/28 21:21, 4F

06/29 06:20, 7年前 , 5F
0才是False boolean要學好
06/29 06:20, 5F

06/29 06:22, 7年前 , 6F
且如果你想用條件的話 index是從0開始記得考慮0哦
06/29 06:22, 6F
文章代碼(AID): #1RC_tjNG (Python)