我正在尝试编写一个执行以下操作的函数:
如果player_hand没有任何小于或等于mana_bank的数字,则该函数不执行任何操作。
如果player_hand的数字小于或等于mana_bank,那么函数应该提示用户选择哪个数字。
如果用户选择的数字小于mana_bank,它应该返回一个包含该数字的列表。如果数字大于mana_bank它应该再次调用该函数,直到他提示一个小于或等于mana_bank的数字。
每当我运行该函数并且用户首先提示一个高于mana_bank的数字时,该函数就会从自身内部调用,然后即使用户提示一个小于或等于mana_bank的数字,该函数也会返回 None 而不是中的数字一个列表。
我还尝试将变量player_choice 设置为全局变量,但它仍然不起作用。
将不胜感激任何指导。
def pick_card():
player_choice_str = 0
player_choice = []
for i in player_hand:
if i <= mana_bank:
print(player_hand, mana_bank, "Mana available type the name of the card you wish to play ... ")
player_choice_str = input()
break
if not i <= mana_bank:
return "You don't have enough mana to play a card."
if int(player_choice_str) > mana_bank:
print("That card costs " + str(player_choice_str) + " and you only have " + str(mana_bank) + " this round.")
pick_card()
if int(player_choice_str) <= mana_bank:
player_choice.append(player_choice_str)
return player_choice
player_hand = [4, 8, 8]
mana_bank = 4
print(pick_card())
忽然笑
慕斯709654
哆啦的时光机
随时随地看视频慕课网APP
相关分类