在while结构中使用'and'/'或'inside'

2024-06-16 08:59:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我写了这段代码,在“while”部分有点困惑

[while (sexo != 'M' and sexo!='F'):]

如果变量sexo不同于M或F,我想展示这个短语。我使用了“or”,但它只在使用“and”时起作用。谁能给我解释一下为什么会这样

以下是完整的代码:

repetir='Sim'

while repetir=='Sim':
    nome =input('Digite seu nome: ')
    sexo=input("Digite 'M' se pertencer ao sexo masculino ou 'F' se pertencer ao sexo feminino.\n")


    while (sexo != 'M' and sexo!='F'):
            sexo=input('Você não é um plateominto.Digite essa zorra correta!\n')


    if sexo=='M':
            print('O nome dele é %s.' %(nome))
    else :
            print('O nome dela é %s.' %(nome))
    repetir=input('Deseja repetir operação?\n' )

Tags: orand代码inputsimprintsewhile
1条回答
网友
1楼 · 发布于 2024-06-16 08:59:35

完整的代码是不可见的(至少,在我的计算机上显示为“Blockquote”)

无论如何,在“and”条件下,您请求输入的性别为M或F。由于用户输入的值不同于这两个值,因此您继续请求性别。基本上,你是说:“除非你的性别不是M或F,否则我会一直问你性别。”

循环内的代码将重复,直到满足括号之间的条件。当输入为M、F或else时,试着写下一张包含所有可能组合的表格(对于后者,只有像a这样的一个字母就足够了),并试着一步一步地评估条件

相关问题 更多 >