|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Menlo 于 2023-10-11 18:45 编辑
- counts=5
- while counts>0:
- gender=input("what is your gender?")
- if gender.lower()=="boy":
- print("you are a male.")
- if gender.lower()=="girl":
- print("you are a female.")
- counts=counts-1
-
- else:
- print("what do you mean?")
- break
复制代码
不知道到底哪里错了。。
想呈现的状态是
回答boy或者girl时候,一共能循环五次,回答的结果不是boy/girl时候,出现“what do you mean?"然后游戏直接结束。
我目前跑出来的结果是回答girl或者非boy/girl时,结果和我期望的一样。但回复boy时候,会出现
”you are a male."
"what do you mean?"
然后游戏结束。。。
为什么回答boy后出现这种情况呢?怎么改才对呢。。百思不解
你的代码逻辑有一些小问题,修改后的代码如下:
- counts = 5
- while counts > 0:
- gender = input("What is your gender? ")
- if gender.lower() == "boy":
- print("You are a male.")
- counts -= 1
- elif gender.lower() == "girl":
- print("You are a female.")
- counts -= 1
- else:
- print("What do you mean?")
- break
复制代码
在原代码中, counts应该在回答正确时减少。因此,在正确的条件语句下,应该将 counts -= 1放在 if或者 elif的内部。此外,需要使用 elif来判断是否为"girl",以避免重复执行判断。
修改后的代码将会循环五次,每次要求输入性别,并根据回答给出相应的输出。如果回答不是"boy"或"girl",则会输出"What do you mean?"并结束游戏。
希望对你有所帮助!如果还有其他问题,请随时提问。
球一个最佳答案谢谢啦!这对我非常重要!  
|
|