我想创建一个python函数,该函数将接受多个我提供的关键字值参数。我已经写了一些东西,但是没有按照我想要的方式工作。它只是打印第一个参数。创建此功能的最佳方法是什么?
def hello(**kwargs):
_path_ = "%s == %s"
for key, value in kwargs.iteritems():
result = _path_ % (key, value)
print (result)
hello(name1="one", name2="two")
答案 0 :(得分:1)
仅打印一个结果,因为打印在for循环之外。因此,它只打印最后存储的kwarg。
改为执行以下操作:
def hello(**kwargs):
_path_ = "%s == %s"
for key, value in kwargs.items():
result = _path_ % (key, value)
print(result)
hello(name1="one", name2="two")
输出:
name1 == one
name2 == two
答案 1 :(得分:0)
print
语句应该在for循环内,因为它每次都分配一个值,下一个值将改变,而不是class
和function
:>
def hello(**kwargs):
_path_ = "%s == %s"
for key, value in kwargs.iteritems():
result = _path_ % (key, value)
print (result)
hello(name="2", lebron="3")
您还可以像这样用键,值对来写字典:
result = {}
for key, value in kwargs.items():
result[key] = value
print (result)