guess = 0
secretNum = 14
for number in range(1,4):
if guess == 0 or guess > 20 :
print("数字必须位于1-20之间")
continue
if guess < secretNum:
print("太小啦")
elif guess > secretNum:
print("太大啦")
else:
break
成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:
做网站、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的
红花岗网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!guess = 0
secretNum = 14
for number in range(1,4):
if guess == 0 | guess > 20 :
print("数字必须位于1-20之间")
continue
if guess < secretNum:
print("太小啦")
elif guess > secretNum:
print("太大啦")
else:
break
为什么两份代码就唯一的 or 和 | 的不同,运行结果不一样?我们之前应该觉得这2个符号是能代替才对呀?
(1)如果a,b是数值变量, 则 |表示位运算
if表达式相当于:if 0 == 0 | 0 > 20 而
>>> 0 == 0 | 0 > 20
False
>>>
所以根本没有进入if guess == 0 or guess > 20 :里面的代码块去执行代码。
(2)如果a, b是逻辑变量, 则or 和 | 用法基本一致
>>> (3>0) | (3<1)
True
>>> (3>0) or (3<1)
True
>>>
总结:为了避免出现今天这个错误,请在python逻辑判断需要或连接时候,尽量用or,不要用其他语言用的那个竖|
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
本文标题:python中or和|有什么区别-创新互联
文章路径:
http://chengdu.cdxwcx.cn/article/ddjcjd.html