【发布时间】:2017-02-07 14:23:31
【问题描述】:
我在我的 Python 代码中使用 Xapian,当我使用时:
queryparser = xapian.QueryParser()
该对象已使用许多标志进行初始化:FLAG_BOOLEAN、FLAG_SPEALLING_CORRECTION。 我想知道如何更改此标志。 我在文档中找到了每个人的功能,但没有找到如何更改。
【问题讨论】:
我在我的 Python 代码中使用 Xapian,当我使用时:
queryparser = xapian.QueryParser()
该对象已使用许多标志进行初始化:FLAG_BOOLEAN、FLAG_SPEALLING_CORRECTION。 我想知道如何更改此标志。 我在文档中找到了每个人的功能,但没有找到如何更改。
【问题讨论】:
您似乎找到了API documentation for QueryParser,这是记录各种标志的地方(希望该链接有助于其他人找到此问题)。
您可以在调用QueryParser对象的parse_query()方法时设置标志,例如:
import xapian
queryparser = xapian.QueryParser()
query = queryparser.parse_query(
"my query",
queryparser.FLAG_BOOLEAN | queryparser.FLAG_WILDCARD
)
(你也可以使用xapian.QueryParser.FLAG_BOOLEAN 和类似的,但这更冗长。)
如示例所示,您使用 Python 的 bitwise or 运算符来组合您需要的不同标志。 QueryParser.parse_query() 方法的 API 文档中介绍了按位或的使用,您可以使用 help(xapian.QueryParser.parse_query) 从 Python REPL 访问该方法。
【讨论】: