作者jasonhsu14 (14號星期五的傑森)
看板Python
標題[問題] if 的判斷是否有特殊限制?
時間Sat Nov 10 21:04:31 2018
大家好,小弟在寫簡單的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