You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

输入'Masculino'或'Feminino'仍返回'Sexo invalido'的问题排查与修复

问题原因及修复方案

核心错误:逻辑判断条件逻辑错误

你写的if a2 != 'Masculino' or a2 != 'Feminino':存在逻辑漏洞——无论输入什么值,这个条件永远为真:

  • 当输入Masculino时,a2 != 'Feminino'成立,整个条件触发退出
  • 当输入Feminino时,a2 != 'Masculino'成立,同样触发退出

正确逻辑应该是:只有当输入既不是Masculino也不是Feminino时,才执行退出。

次要错误:输入提示的类型转换错误

input(int('Quantos anos você tem: '))写法错误,input()的参数需要是字符串类型,不需要用int()包裹。如果要将输入的年龄转为整数,应该先获取输入字符串,再做类型转换。

修复后的代码

import sys

a1 = input('Digite o seu nome ')
a2 = input('Sexo: ')

# 方案1:用and修正逻辑判断
if a2 != 'Masculino' and a2 != 'Feminino':
    sys.exit('Sexo invalido')

# 方案2:用not in简化判断(推荐)
# if a2 not in ('Masculino', 'Feminino'):
#     sys.exit('Sexo invalido')

# 修正年龄输入的类型转换
a3 = int(input('Quantos anos você tem: '))

内容的提问来源于stack exchange,提问作者Igor Germann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 01:57:48