python - Z3PY 将 Int 转换为 Python int

标签 python z3 z3py

有没有办法将 Z3PY 数据类型转换为原生 Python 数据类型?

当我的公式由 Z3 求解时,我可以通过调用 model() 函数将其打印出来。但是如何将模型输出保存为变量中的普通整数呢?这样我就可以使用它们。

我可以将它们转换为普通整数,以便我可以在程序的其余 Python 代码中使用它们吗?

我使用求解器的全部目的是将结果作为另一个 Python 程序的输入。所以我需要它能够处理它。

最佳答案

假设您声明的变量是 x:

x = z3.Int("x")

你会得到像这样的Python int:

model[x].as_long()

z3 模型也是可迭代的。检索列表理解中的所有参数:

[model[v] for v in model]

关于python - Z3PY 将 Int 转换为 Python int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65911213/

相关文章:

python - 如果特定属性匹配,则查找并提取 xml 标签的名称

z3 - Z3中宏和量词的区别

python - 编译Z3python?

python - 混沌排列

python - Binance websocket实时绘图而不阻塞代码?

python - 从包含 JSON 的列表中获取键和值

z3 - 具有删除特定约束能力的增量 SMT 求解器

python - (Z3Py) 检查方程的所有解

python - z3 规划问题和阻碍世界

z3 - 在 Z3 中使用不同的后端求解器