Это условное выражение , введенное в Python 2.5.(Это действительно должно быть в одной строке).
Он делает именно то, что читает - post_data
равно None
, если post_args is None
, в противном случае ему присваивается результат urllib.urlencode(post_args)
. * 1009.*
Более подробный способ написания:
if post_args is None:
post_data = None
else:
post_data = urllib.urlencode(post_args)
или, используя и / или трюк :
post_data = (post_args is None and [None] or [urllib.urlencode(post_args)])[0]