[問題] if 的判斷是否有特殊限制?

作者: jasonhsu14 (小健人)   2018-11-10 21:04:31
大家好,小弟在寫簡單的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去寫的
謝謝,還麻煩各位了
作者: alibuda174 (阿哩不達)   2018-11-10 21:11:00
把 & 改成 and
作者: jasonhsu14 (小健人)   2018-11-10 21:15:00
!?!? 這樣確實就可以了耶!!!感謝樓上!! 原來這兩個有差
作者: tentenlee (天天)   2018-11-10 21:29:00
&是位元運算子
作者: isaswa (黒丸)   2018-11-10 22:44:00
&跟&&是不同的概念吧
作者: toy9986619 (幻飄)   2018-11-11 13:12:00
python 直接寫and 跟 or即可邏輯判斷的時候
作者: s860134 (s860134)   2018-11-11 20:41:00
c 裡面也是不同吧

Links booklink

Contact Us: admin [ a t ] ucptt.com