我正在尝试使用sqlsoup插入字典。不幸的是,这不起作用:
db.blah_table.insert({"blah_field" : "blah_value"})
它给我一个错误
TypeError: insert() takes exactly 1 argument (2 given)
sqlsoup的更新工作正常。我真的不想把它分解成
db.blah_table.insert(blah_field = "blah_value")
效果也不错。救命!
在python中,您可以使用参数打包语法将字典作为关键字参数传递给任何函数**
。
如果您将字典arguments
定义为:
arguments = {'blah_field': 'blah_value'}
您可以db.blah_table.insert
使用该字典作为关键字参数来调用,如下所示:
db.blah_table.insert(**arguments)
在引擎盖下相当于:
db.blah_table.insert(blah_field=blah_value)
**
顺便说一句,虽然可以从字典中解压缩命名参数,但可以*
使用单个从列表或元组中解压缩位置参数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句