## python如何继续循环回初始值？内容来源于 Stack Overflow，并遵循CC BY-SA 3.0许可协议进行翻译与使用

• 回答 (2)
• 关注 (0)
• 查看 (208)

```from random import randint

n = input()
print ('Welcome, ', n, ' Choose your weapon: Sword, Axe, or Mace.')
b = input()

if b == {'Sword'}:
print ('Good Choice ', (n), ' the Sword will keep you safe.')
elif b == {'Axe'}:
print ('Good Choice ', (n), ' the Axe will do some damage.')
elif b == {'Mace'}:
print ('Probably a bad choice ', (n), ' the mace is heavy and slow but may protect you.')

print ('The Knight Approaches! ', (n), ', Get your', (b),' and get ready!')

player = 50
knight = 50

battle = True

while player >= 0  or knight >= 0:

if b == 'Sword':
k2 = (knight - randint(3,4))
p2 = (player - randint(2,6))
print ('You have struck the knight!  His health is now', k2)
print ('He has hit you as well!  Your health is now', p2)

elif b == 'Axe':
print ('You have struck the knight!  His health is now', knight - randint(2,6))
print ('He has hit you as well!  Your health is now', player - randint(3,4))

elif b == 'Mace':
print ('You have struck the knight!  His health is now', knight - randint(0,7))
print ('He has hit you as well!  Your health is now', player - randint(2,6))

if player <= 0:
print ('You have died...')
elif knight <= 0:
print ('You have won!')

break

print ('Good Game')```

### 2 个回答

```damage = randint(2, 6)
knight = knight - damage```