|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- while True:
- answer = input("主人,我可以退出循环了吗?")
- if answer == "可以!":
- break
- print("哎,好累~~~")
复制代码
在你的代码中,问题出在这一行:
这里的问题是,你使用了 or 运算符来尝试为 answer 变量赋值。然而,这种用法是错误的。
在 Python 中,or 运算符用于将两个布尔表达式连接起来。它会计算第一个表达式的布尔值,如果为 True,则返回第一个表达式的结果;如果为 False,则返回第二个表达式的结果。
在这个例子中,"可以" 和 "不可以" 都是非空字符串,它们在布尔上下文中都被视为 True。
因此,"可以" or "不可以" 这个表达式会计算为 "可以",因为第一个表达式的布尔值为 True。
所以,实际上你的代码等同于:
对你的代码修改如下:
- while True:
- answer = input("主人,我可以退出循环了吗? (请输入'可以'或'不可以')")
-
- if answer == "可以":
- break
- elif answer == "不可以":
- print("哎,好累~~~")
- else:
- print("请输入'可以'或'不可以'")
复制代码
在这个修改后的示例中,移除了 answer = "可以" or "不可以" 这一行,而是在 if 语句中检查用户输入的答案。
如果答案是 "可以",则跳出循环;如果答案是 "不可以",则输出 "哎,好累~~~";否则,提示用户输入 "可以" 或 "不可以"。
这样,你就可以实现只能输入 "可以" 或 "不可以" 的限制。
|
|