为什么自己测试不会报错
Topic source因为if语句这里 'female' 恒为true,所以不会报错?
if gender == 'male' or 'female':
应该这么写?
if gender == 'male' or gender == 'female':
想问下楼主为啥if语句这里 'female' 恒为true呀?
if gender == 'male' or gender == 'female':
和
if gender == 'male' or 'female':
有什么区别吗?(萌新瑟瑟发抖)
if gender=='male' or 'female'这里判断gender=='male'是否为True,而‘female’这个只要不为空,值一直都是ture的,所以这个判断语句一直都是为True
if gender == 'male' or gender == 'female':这里是判断gender=='male'是否为True,gender=='female'是否为True,两个判断结果or的结果
if gender == 'male' or 'female':
请问大佬们这样写是测试有问题吗?小白没太懂这个问题。
这个不是要说明gender的输入是male或female就可以吗?
楼上说“ 而‘female’这个只要不为空,值一直都是ture的,所以这个判断语句一直都是为True ”。 这说明什么了啊?
==的优先级大于or,所以这样写的问题是什么呢?
求大佬解释~~万分感谢
大一上过c++的课记得一点点,
if gender == 'male' or 'female':
因为要先看‘==’,所以这逻辑成了 if (gender=='male') or (female), 是这个意思吗。那只要female不说明是none,这个判断就一直为true。
- 1
Mc麦子_专炸潘多拉
自己测试输入
并不会报错,并且查询性别有正常结果这事为什么