while gender.capitalize() != "M" and gender.capitalize() != "F" and gender.capitalize() != "Male" and gender.capitalize() != "Female":
print("Not a valid entry: ")
gender = (input("Gender: "))
if gender.capitalize() == "M" or gender.capitalize()== "Male":
print("Hello " + name + " you are " + age + " years old and are a boy")
elif gender.capitalize() == "F" or gender.capitalize()== "Female":
print("Hello " + name + " you are " + age + " years old and are a girl")
这是工作代码我只是想知道为什么和工程以上和或工程以下我肯定这是!=但我不确定
我只想更好地了解何时以及为何使用和vs或
2条答案
按热度按时间bkhjykvo1#
and
应在满足所有条件要求时使用[即所有条件必须为True]当任何一个条件满足条件时,应使用
or
[即,任何一个条件应满足True]例如,假设你想要一个能被2整除且大于10的数
您应适用的条件-:如您所见,使用
if num%2==0 and num>10:
是因为您希望同时满足两个条件例如,假设你想要一个大于10的数,或者如果它不大于10,这个数应该能被2整除
您应该应用的条件:-
if num>10 or num%2==0
,如您所见,使用or
,因为如果满足任何一个条件,您需要该数字。jaxagkaj2#
在第一行(while),你要求性别变量不是你提到的值,所以不是(!=)M,F,男性或女性。
对于底部两行,可以使用其中一个,因此对于中间行(如果),值可以是M或Male。
如果你使用AND,那么所有条件都必须为真,如果你使用OR,那么给定条件中只有一个必须为真。
示例:True AND False -〉返回FALSE True OR False -〉返回FALSE