1
我对Python比较陌生,最近遇到了kwargs。我想我理解他们以及他们是如何工作的。但是,当我尝试使用for循环打印键和值时,它会引发ValueError:太多值来解压缩。在Python 3中打印kwargs
def shop(**kwargs):
sh = 1
print ("Welcome to the shop!")
for i, v in kwargs:
print (" ", i, ": ", v)
while sh == 1:
b = input ("What would you like to buy?").lower()
if b == i:
Player.gold -= v
Player.inv_plus(i)
elif b == "exit":
sh = 0
shop(Stone=5, Potion=10)
Player.gold是玩家多少金币,Player.inv_plus(i)为玩家的库存物品加1。尽管如此,这对我所遇到的问题并不重要。
如果我打印没有for循环的kwargs,它工作正常。但这不是我打印时想要的格式。
如果有人能解释我在做什么错我会非常感激,因为我很困惑,为什么它不工作。
只是在python2中添加一个边注意它是'kwargs.iteritems()' – danidee