[问题] 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