我试图通过用户输入的密钥在字典中打印出一个值,但什么都没有出来。有任何想法吗?
u_items=input("Enter 'list' to see a list of items, or 'Book', 'Apple', 'Toy', 'Pumpkin', 'Bowl' or 'Purse' to see the item's price: ")
u_items=u_items.title()
inventory={'Book':'18', 'Apple':'3', 'Toy':'7', 'Pumpkin':'9', 'Bowl':'5', 'Purse':'30'}
if u_items in inventory[u_items] == True:
print("A " + u_items + "costs $" + inventory[u_items])
elif u_items == 'List':
print(items(inventory))
答案 0 :(得分:1)
您的if语句构造错误。它应该是这样的:
if u_items in inventory:
此测试是否在字典中存在u_items
(用户输入的密钥)。
您之前所做的是通过使用u_items
索引inventory
来查看返回的值中是否存在u_items
。因此,如果用户输入'apple'
,您的代码将被解释为:
if 'Apple' in '3' == True: