Lar*_*gas 4 python django iterable-unpacking
为什么这会成功
qs = Model.objects.filter(pk=1)
kwargs = {'name': 'me',
'age_desc': 'getting older'
}
qs.update(**kwargs)
Run Code Online (Sandbox Code Playgroud)
但不是这个?
qs = Model.objects.filter(pk=1)
nt = collections.namedtuple('nt','name, age_desc')
kwargs = nt('me', 'getting older')
qs.update(**kwargs)
Run Code Online (Sandbox Code Playgroud)
难道就没有办法使用namedtuples的时候才来开箱参数,而不是类型的字典的django?
我不认为 Python 关键字参数解包(**语法)支持命名元组,但是您可以使用_asdict()命名元组对象的方法从命名元组中获取字典。或者vars()在 3.x 上,也可能在 2.7.5 上(从 namedtuple 获取特定对象的对象名称对 2.7.5 安装的状态进行了一些讨论)。
| 归档时间: |
|
| 查看次数: |
1844 次 |
| 最近记录: |