Python中input获取输入后if/else条件判断不生效问题求助
问题根因
Python 3 中input()函数的返回值默认是字符串类型,你的代码直接将字符串和整数1、2做相等判断,类型不一致的相等比较结果永远为False,因此每次都会进入else分支输出hmmm。
另外你代码里还有个小拼写错误:elif分支的ented应为entered。
解决方法
方案1:将输入值转换为整数
接收输入时直接转成int类型,建议补充异常捕获处理非数字输入的场景:
try: value = int(input("Enter Number")) except ValueError: print("请输入合法数字") else: if value == 1: print("You entered 1") elif value == 2 : print("You entered 2!") else: print("hmmm")
方案2:把判断条件改为字符串比较
不需要修改输入逻辑,直接把判断的目标值改为字符串格式即可:
value = input("Enter Number") if value == "1": print("You entered 1") elif value == "2" : print("You entered 2!") else: print("hmmm")
内容的提问来源于stack exchange,提问作者dizzysylveon
相关产品推荐
相关产品推荐

