看板 Python 關於我們 聯絡資訊
大家好,小弟在寫簡單的if判斷時候,遇到一個很奇怪的問題 先附上程式碼 def Day01(Data, Variables ): if Variables['C']==0 & Variables['D']==0 & Data['B']>=800 : Variables['C']=Data['A']+100 Variables['D']=Data['A']-100 return Variables DData={'A':10000, 'B':800 } Var={'C':0, 'D':0} X=Day01(DData ,Var) 這段程式碼中if 的三個條件 Variables['C']==0 & Variables['D']==0 & Data['B']>=800 都是True的,但我碰到的問題是,程式並不會執行if中的內容 但如果我把if的條件改成 Variables['C']==0 & Variables['D']==0 或是只有 Data['B']>=800 他就可以執行if中的內容 但三個放在一起就無法QQ 還請鄉民們能夠協助,謝謝 雖然不知道是否有關,但我是透過spyder去寫的 謝謝,還麻煩各位了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.217.180 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1541855073.A.D7C.html
alibuda174: 把 & 改成 and 11/10 21:11
jasonhsu14: !?!? 這樣確實就可以了耶!!! 11/10 21:15
jasonhsu14: 感謝樓上!! 原來這兩個有差 11/10 21:17
tentenlee: &是位元運算子 11/10 21:29
isaswa: &跟&&是不同的概念吧 11/10 22:44
toy9986619: python 直接寫and 跟 or即可 11/11 13:12
toy9986619: 邏輯判斷的時候 11/11 13:12
s860134: c 裡面也是不同吧 11/11 20:41