Python中如何给同一变量赋多个值 实现猜对任一数值即返回正确
代码调整方案
原代码核心问题
- 变量a赋值错误:换行拆分的写法仅会将
(1,)赋值给a,5、10不会被纳入a的取值范围,需要将所有目标值存入同一个元组/列表容器 - 类型不匹配:
input()默认返回字符串类型,无法直接和整数做相等判断,需要转换为int类型 - 匹配逻辑错误:判断单个值是否属于多值集合不能用
==,需要用in关键字做成员关系判断
修正后可运行代码
# 定义所有待匹配的目标数值 a = (1, 5, 10) # 读取用户输入并转换为整数 b = int(input("Guess one of the numbers: ")) # 执行匹配判断 if b in a: print("Correct") else: print("Wrong")
可选优化(兼容非数字输入场景)
如果需要避免用户输入非整数时程序报错,可增加异常捕获逻辑:
a = (1, 5, 10) try: b = int(input("Guess one of the numbers: ")) print("Correct" if b in a else "Wrong") except ValueError: print("请输入有效的整数")
内容的提问来源于stack exchange,提问作者4non
相关产品推荐
相关产品推荐

