ad

在循环中验证raw_input-英雄云拓展知识分享

匿名投稿 183 2024-01-22

我正在尝试创建一个验证循环,以检查用户输入针对定义内涵的列表,但是由于某种缘由,代码会永久堕入循环中,要求用户重新输入该值。我经过将打印命令添加到循环中,然后将输入数据存储到属性词典中,但它仿佛从未满足==标准以触发从for循环触发中断的标准。

到至今为止为止,这是我的代码,真的很感谢我对我要去的何处的任何建议:

attributes = {'Name': 'None', 'Class': 'None', 'Strength': 3, 'Agility': 3, 'Wounds': 3, 'Intelligence': 3}

在循环中验证raw_input-英雄云拓展知识分享

attributes['Name'] = raw_input('What is your character\'s name?')

attributes['Class'] = raw_input('Choose your character\'s class, enter Warrior, Mage, Ranger or Thief.')

#this is the section I am struggling with!

for values in attributes:

if attributes['Class'] != "Warrior" or "Mage" or "Ranger" or "Thief":

attributes['Class'] = raw_input('Please choose either Warrior, Mage, Ranger or Thief.')

continue

elif attributes['Class'] == "Warrior" or "Mage" or "Ranger" or "Thief":

break

if attributes["Class"] == "Warrior":

attributes["Strength"] += 1

attributes["Wounds"] += 1

elif attributes["Class"] == "Mage":

attributes["Intelligence"] += 2

elif attributes["Class"] == "Ranger":

attributes["Strength"] += 1

attributes["Agility"] += 1

elif attributes["Class"] == "Thief":

attributes["Agility"] += 1

attributes["Intelligence"] += 1

print

print 'Name: ' + attributes['Name']

print 'Class: ' + attributes['Class']

print 'STR: ' + str(attributes['Strength']), 'AGI: ' + str(attributes['Agility']), 'WOU: ' + str(attributes['Wounds']) ,'INT: ' + str(attributes['Intelligence'])

看答案

线

if attributes['Class'] != "Warrior" or "Mage" or "Ranger" or "Thief":

将永久降落到 True 由于 bool("Mare") == True 因此,这种情况下,您的循环永久不会破裂。

我认为您正在寻觅的东西更接近:

if attributes['Class'] not in ("Warrior", "Mage", "Ranger", "Thief"):

如果您只是想检查 attributes['Class'],以下循环可能更适合:

while attributes['Class'] not in ("Warrior", "Mage", "Ranger", "Thief"):

attributes['Class'] = raw_input('Please choose either Warrior, Mage, Ranger or Thief.')


🚀🌟 点击注册 免费试用超级应用平台-英雄云企业级hpaPaas 🌟🚀 😃👉🌐

免责声明:

本网址(www.yingxiongyun.com)发布的材料主要源于独立创作和网友匿名投稿。此处提供的所有信息仅供参考之用。我们致力于提供准确且可信的信息,但不对材料的完整性或真实性作出任何保证。用户应自行验证相关信息的正确性,并对其决策承担全部责任。对于由于信息的错误、不准确或遗漏所造成的任何损失,本网址不承担任何法律责任。本网站所展示的所有内容,如文字、图像、标志、音频、视频、软件和程序等的版权均属于原创作者。如果任何组织或个人认为网站内容可能侵犯其知识产权,或包含不准确之处,请即刻联系我们进行相应处理。

标签:自动化 应用模板开发 企业信息化
上一篇:扩大的Modelform不保存相干表-英雄云拓展知识分享
下一篇:Excel图绘图 - 低基数列与垃圾箱的频率-英雄云拓展知识分享
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×