Python输入'H'/'C'无输出问题排查:判断逻辑错误分析
问题分析与解决
核心问题
你定义的H = True和C = False是布尔类型值,但input()函数获取的用户输入是字符串类型(比如输入'H'得到的是字符串'H')。布尔值与字符串属于不同类型,永远不可能相等,导致两个条件分支都无法触发,因此没有任何输出,也不会报错。
修正方案
有两种简单可行的修正方式:
方式一:直接与目标字符串比较
去掉多余的H、C变量,直接在条件判断中对比输入字符串:
print("Enter if it is a hot or cold day \n , H for Hot day, C for Cold day") i = input('enter H or C \n') if i == 'H': print('Its a hot day') elif i == 'C': print('Its a cold day')
方式二:将H、C定义为字符串变量
如果需要保留H、C变量,把它们的值改为对应的字符串:
H = 'H' C = 'C' print("Enter if it is a hot or cold day \n , H for Hot day, C for Cold day") i = input('enter H or C \n') if i == H: print('Its a hot day') elif i == C: print('Its a cold day')
内容的提问来源于stack exchange,提问作者Tabish Hussain
相关产品推荐
相关产品推荐

