这段代码会无限重复,但不能终止
时间: 2024-03-16 17:42:49 浏览: 55
原因可能是因为在while循环中,用户输入的choice值没有更新,因此导致一直执行相同的代码,从而导致程序无法终止。 可以尝试修改代码以更新choice值,例如通过添加一个input语句来获取新的choice值。您可以尝试修改代码如下:
```
adopt_count = 0 # 宠物领养次数
print('欢迎来到宠物店')
name = input('请你为它取名:')
choice = input('请选择你要领养的宠物:1、狗,2、企鹅,3,退出程序:')
while choice != '3':
if choice == '1':
result = input("请选择要领养的狗狗品种(1、拉布拉多,2、金毛)")
if result == '1':
strain = '神兽拉布拉多'
elif result == '2':
strain = '普通的金毛'
# 2创建对象 对象名=类名
dog = Dog()
# 3给对象添加属性
dog.name = name
dog.strain = strain
dog.health = 100
dog.love = 0
# 4调用方法 输出宠物独白
dog.show()
adopt_count += 1 # 次数+1
elif choice == '2':
result = input("请选择企鹅的性别:1、Q仔,2、Q妹:")
if result == '1':
sex = 'Q仔'
elif result == '2':
sex = 'Q妹'
pgn = Penguin()
pgn.name = name
pgn.sex = sex
pgn.health = 100
pgn.love = 0
pgn.show()
adopt_count += 1
else:
print("无效的输入!")
choice = input('请选择你要领养的宠物:1、狗,2、企鹅,3,退出程序:')
print("您已经领养了{}只宠物。".format(adopt_count))
```
此时,如果用户输入'3',程序就会退出循环,执行最后一行的输出语句。
阅读全文