这种python三元运算符的使用失败了 - 不知道为什么?

时间:2017-09-26 13:55:44

标签: python

在我的函数中,如果存在字典(作为参数传入),则向其添加另一个字典,或者将其用作字典。 (这里的上下文是相关词典)

def some_view(request, form_class, template, success_url, context=None):
    ..........
    if context is not None:
        context.update({'form': form})
    else:
        context = {'form': form}
    return render(request, template, context)

这很好但是使用

context = context.update({'form': form}) if context is not None else {'form': form}

由于某种原因失败,因为上下文返回为None?

1 个答案:

答案 0 :(得分:4)

你正在寻找的习语只是

if context is None:
    context = {}
context.update({'form': form})