【发布时间】:2021-07-01 02:08:09
【问题描述】:
我实际上不确定这里出了什么问题,但是代码并没有给我想要的东西。
从技术上讲,我想要它做的是,如果我写“0”,它将在字典中(可能更多取决于它有多少项目)或“N”,它将停止。但它不起作用。它总是运行 if 而不是 else。
是我看不到的明显东西还是只是一个错误(不太可能)
from time import sleep
inventory = {}
character = {'Energy': 180}
inventory['Red Mushroom'] = {'Quantity': 1,
'Description': 'It looks good for the Energy, but also a tasteful snack...',
'Effect': 35}
def show_inve():
sleep(1)
mapear = {}
if inventory == {}:
print('Its empty...\n')
else:
for i, pos in enumerate(inventory):
print(f'[{i}] {pos:<10}: {inventory[pos]["Quantity"]:>0}')
mapear[str(i)] = pos
while True:
sleep(1)
decision = input('Type the number of the item or N to leave: ').strip()
if decision not in mapear or decision != 'N':
sleep(1)
print('Not an option.')
continue
else:
break
show_inve()
【问题讨论】:
-
为什么你需要在你的'if'结尾处'continue'?尝试删除它。
标签: python if-statement logic operators