下面的Python 语句的等效代码是什么?
post_data = None if post_args is None else urllib.urlencode(post_args)
我无法理解这段代码到底做了什么。有什么帮助吗?
谢谢。
post_data = None if post_args is None else urllib.urlencode(post_args)
I can't understand what this code really do. Any help?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
等价于以下内容:
is equivalent to the following:
这是 python 2.5 中引入的条件表达式。 (它确实应该在一行上)。
它的作用与它的读法完全一样——如果
post_args 为 None
,则post_data
为None
,否则它被分配为urllib.urlencode 的结果(post_args)
。更详细的编写方式是
or,使用 and-or 技巧:
That's a conditional expression, introduced in python 2.5. (It really ought to be on one line).
It does exactly what it reads like --
post_data
isNone
ifpost_args is None
, otherwise it's assigned the result ofurllib.urlencode(post_args)
.A more verbose way of writing it would be
or, using the and-or trick: