我有一个Python对象的数组,我想让所有对给定的逻辑公式求值为真的对象。你知道吗
假设这些对象是任务跟踪系统中的任务。每个任务都有一个状态、一个受让人和一个到期日。现在我想让所有计算公式的对象都为真:
(assignee=cdecker OR due=tomorrow) AND status=open
对于对象字段(assignee
和status
)之类的内容,检查相等性将是一个简单的问题,而due=tomorrow
将是要在对象上调用的函数。你知道吗
有没有一个简单的解析器可以用来解析表达式,然后对启动集中的所有对象进行求值(基本上是将所有文本连接到函数调用)?你知道吗
试试pyparsing。下面是一个语法分析器,它支持等式、布尔运算和嵌套方括号:
您可以将其应用于公式,以获得类似于树的结构,您可以在稍后的某个时间对其进行计算,例如:
定义一个执行测试的函数,然后:
相关问题 更多 >
编程相关推荐