首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TinyDB如何更新

TinyDB如何更新
EN

Stack Overflow用户
提问于 2019-07-31 04:44:51
回答 1查看 2K关注 0票数 2

如果我想要更新一个特定的密钥,我该怎么做?为什么我不能使用字典方法进行直接更新?

代码语言:javascript
复制
db = TinyDB(sys.argv[1]) #assume empty
db.insert({'a':'1','b':'2'})

for record in db:
   if True:
      record['a'] = 2

print(db.all())

输出:

代码语言:javascript
复制
({'a':'1','b':'2'})

期望值:

代码语言:javascript
复制
({'a':'2','b':'2'})

虽然使用Query()可能会很有用,但将来我可能会有很多类似的记录,为每个键设置条件可能会很麻烦。我想尝试使用记录本身作为条件,只更改一个键。

EN

回答 1

Stack Overflow用户

发布于 2020-05-02 02:26:37

要更新文档中的值,请使用update method

在您的示例中:

代码语言:javascript
复制
from tinydb import TinyDB, Query

db = TinyDB('db.json')
db.insert({'a': '1', 'b': '2'})

print(db.all())

# Find all documents (dict objects) that contain 'a' key
# and set value of key 'a' to 2
db.update({'a': 2}, Query().a.exists())

print(db.all())
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57279765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档