问题:
两次的运算结果为什么不一样?第二个是正确答案
import datetime
sum=0
start=datetime.date(2000,1,1)
end=datetime.date(2020,10,1)
days=datetime.timedelta(days=1)
while(start<=end):
if start.day==1 | start.weekday()==0:
sum+=2
else:
sum+=1
start+=days
print(sum)
import datetime
sum=0
start=datetime.date(2000,1,1)
end=datetime.date(2020,10,1)
days=datetime.timedelta(days=1)
while(start<=end):
if start.day == 1 or start.weekday() == 0:
sum+=2
else:
sum+=1
start+=days
print(sum)
如果对第一个代码加上括号也能得到答案,这是为什么?
import datetime
sum=0
start=datetime.date(2000,1,1)
end=datetime.date(2020,10,1)
days=datetime.timedelta(days=1)
while(start<=end):
if (start.day==1) | (start.weekday()==0):
sum+=2
else:
sum+=1
start+=days
print(sum)