谓词类型 a=b 的 Python 函数参数
请原谅我的 Python 技能或缺乏。我看到一些方法调用的形式
auth_req = urllib2.Request(auth_uri, data=authreq_data)
,如果我只输入 authreq_data ,我会收到错误。此类方法参数的正确技术定义是什么?它是布尔/谓词类型吗?
Pardon my Python skill or the lack of it. I saw some methods calls of the form
auth_req = urllib2.Request(auth_uri, data=authreq_data)
If I put in just authreq_data
I get an error. What is the correct technical definition for this type of method argument? Is it a boolean/predicate type?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
它们被称为关键字参数。
您可以在不指定关键字的情况下使用它们,只要您还传递它们之前的所有参数即可。
urrlib2.Request 的签名就是
只要指定url, So ,
auth_uri
在这种情况下,您应该能够传递authreq_data
而无需指定它是data
参数。Python 3 还添加了用于指定仅关键字参数的语法。
They're called keyword arguments.
You can use them without specifying the keyword, so long as you also pass all the arguments before them.
The signature of urrlib2.Request is
So as long as you specify the url,
auth_uri
in this case, you should be able to passauthreq_data
without specifying that it is thedata
argument.Python 3 has also added a syntax for specifying keyword only arguments.
这是一个关键字参数。
It's a keyword argument.