首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TypeError: python模块tinydb中不可调用“bool”对象

TypeError: python模块tinydb中不可调用“bool”对象
EN

Stack Overflow用户
提问于 2022-11-28 15:37:56
回答 1查看 22关注 0票数 -1

我有错误TypeError:'bool‘对象不可调用,当尝试在tinydb中使用函数search

我的代码:

代码语言:javascript
复制
from tinydb import TinyDB, Query
db = TinyDB('db.json')
User = Query()
db.insert({'test': 'signs', 'age': 34})
res = db.search(User.test == 'signs')
print(res)

`

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-28 16:49:35

"test“似乎是查询对象的内建函数。将test更改为name或其他任何东西都会解决问题。

代码语言:javascript
复制
from tinydb import TinyDB, Query
db = TinyDB('db.json')
User = Query()
db.insert({'name': 'signs', 'age': 34})
res = db.search(User.name == "signs")
print(f"the search: {res}")
print(f"User.test: {User.test}")

输出

代码语言:javascript
复制
the search: [{'name': 'signs', 'age': 34}]
User.test: <bound method Query.test of Query()>

您还可以看到“test”作为Query对象的属性列出,在您创建的对象上运行dir()

代码语言:javascript
复制
>>> from tinydb import TinyDB, Query
>>> User = Query()
>>> dir(User)
['__and__', '__call__', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__invert__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__or__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_generate_test', '_hash', '_path', '_test', 'all', 'any', 'exists', 'fragment', 'is_cacheable', 'map', 'matches', 'noop', 'one_of', 'search', 'test']
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74603001

复制
相关文章

相似问题

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