如何调用函数包含带有输入函数数据的kwargs?

时间:2017-07-14 01:17:43

标签: python python-2.7 user-input kwargs

我有一个功能:

def myFunc(**kwargs):
    for username, password in kwargs.iteritems():
        print "%s = %s" % (username, password)

我希望使用以下输入来接收用户名和密码:

username = input("Enter username : ")
password = input("Enter password : ")

然后将用户名和密码传递给myFunc:

myFunc(username = password)

我知道它不会起作用,但处理这项工作的解决方案是什么?

注意:在每次迭代中,用户名和密码都可能不同。

2 个答案:

答案 0 :(得分:2)

您需要使用**语法将dict扩展为其组成键/值对。例如:

myFunc(**{username: password})

d = {}
d[username] = password
myFunc(**d)

答案 1 :(得分:2)

如果存在,您可以从kwargs阅读它们:

def myFunc(**kwargs):
    print("username = " + kwargs["username"])
    print("password = " + kwargs["password"])

myFunc(username="jane", password="doe")