SOAPpy - 命名参数列表中的保留字
我正在使用SOAPpy来访问一个SOAP网络服务。调用findPathwaysByText这个函数时,一切正常:
server.findPathwaysByText (query= 'WP619', species = 'Mus musculus')
但是,调用login这个函数时就不行了:
server.login (user='amarillion', pass='*****')
因为“pass”是一个保留字,所以Python不允许这样运行。有没有什么解决办法?
2 个回答
1
你可以这样说:
server.login(user='amarillion', **{'pass': '*****'})
这里的双星号语法是用来处理关键字参数的。下面是一个简单的例子,展示了发生了什么:
def f(a, b):
return a + b
kwargs = {"a": 5, "b": 6}
return f(**kwargs) # same as saying f(a=5, b=6)
5
你可以试试:
d = {'user':'amarillion', 'pass':'*****' }
server.login(**d)
这段代码把给定的字典当作关键字参数传入(用的是 ** 符号)。