python轻量规则引擎rule-engine入门与应用实践
from py_expression_evaluator import evaluate
from rule_engine import rule_engine_factory
# 定义规则
def rule(facts):
age = facts['age']
return evaluate("age >= 18", {"age": age})
# 初始化规则引擎
engine = rule_engine_factory(
{
"condition": rule
}
)
# 执行规则
result = engine.condition({"age": 20})
print(result) # 输出: True
# 使用规则引擎进行决策
def decide(facts):
return engine.condition(facts)
# 根据年龄决策
print(decide({"age": 16})) # 输出: False
print(decide({"age": 22})) # 输出: True
这个简单的例子展示了如何使用rule_engine
库来定义一条规则,该规则检查一个人的年龄是否达到或超过18岁,并展示了如何使用该规则进行决策。在实际应用中,规则可能会更加复杂,并涉及到多个条件判断和更复杂的表达式评估。
评论已关闭