请原谅我的 Python 技能或缺乏它。我看到了一些形式的方法调用
auth_req = urllib2.Request(auth_uri, data=authreq_data)
如果我只输入 authreq_data
,我会得到一个错误。此类方法参数的正确技术定义是什么?它是 bool /谓词类型吗?
最佳答案
它们叫做 keyword arguments .
您可以在不指定关键字的情况下使用它们,只要您还传递它们之前的所有参数即可。
urrlib2.Request的签名是
urllib2.Request(url[, data][, headers][, origin_req_host][, unverifiable])
所以只要你指定 url,auth_uri
在这种情况下,你应该能够传递 authreq_data
而无需指定它是 data
参数。
auth_req = urllib2.Request(auth_uri, authreq_data)
Python 3 还添加了用于指定 keyword only arguments 的语法.
关于谓词类型 a=b 的 Python 函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6978903/