直接从python访问minizinc
minizinc的Python项目详细描述
微锌Python
python包允许您直接从python访问minizing的所有功能。
Explore the docs »
Report Bug
·
Request Feature
目录
关于项目
minizinc python提供了从python到minizinc驱动程序的接口。这个 该项目最重要的目标是允许使用 原生python结构。这将允许您更容易地使脚本运行 Minizinc,但也将允许在更大的 (python)项目。此模块还旨在公开元搜索的接口。 对于难以解决的问题,元搜索可以提供解决方案 更多或更好的快速解决方案。
开始
要启动并运行minizinc python,请执行以下简单步骤。
安装
minizinc python可以通过运行pip install minizinc
来安装。它
需要MiniZinc2.2.0+和
Python3.6.0+将安装在系统上。微量锌
python希望minizinc
可执行文件在可执行路径上可用,
$PATH
环境变量,或在默认安装位置。
有关详细信息,请参阅 Documentation
使用量
安装完所有先决条件和minizinc python之后,一个minizinc
模块
将在python中提供。下面的python代码演示如何运行
典型的迷你锌模型。
importminizinc# Create a MiniZinc modelmodel=minizinc.Model()model.add_string("""var -100..100: x;int: a; int: b; int: c;constraint a*(x*x) + b*x = c;solve satisfy;""")# Transform Model into a instancecbc=minizinc.Solver.lookup("gecode")inst=minizinc.Instance(cbc,model)inst["a"]=1inst["b"]=4inst["c"]=0# Solve the instanceresult=inst.solve(all_solutions=True)foriinrange(len(result)):print("x = {}".format(result[i]["x"]))
有关更多示例,请参阅 Documentation
测试
minizinc python使用Tox环境来测试 它的编码风格和功能。代码样式测试使用 Black, Flake8,和 isort。功能测试是 使用PyTest单元测试框架构造。
- 要运行所有测试,只需在repository目录中执行
tox
。 - 可以使用
-e
标志触发各个环境。- 要测试存储库的编码样式,请运行
tox -e check
py3x
环境用于测试特定的python版本;对于 例如,要使用python version 3.7进行测试,请运行tox -e py37
- 要测试存储库的编码样式,请运行
tox还可用于生成文档tox -e docs
,以及
排版python代码,tox -e format
。
路线图
请参阅open issues以获取 建议功能(和已知问题)的列表。
贡献
贡献使开源社区成为 学习,激励,创造。你所做的任何贡献都是大 感谢。
- 分叉项目
- 创建功能分支(
git checkout -b feature/AmazingFeature
) - 提交更改(
git commit -m 'Add some AmazingFeature'
) - 推到分支(
git push origin feature/AmazingFeature
) - 打开合并请求
许可证
在Mozilla公共许可2.0版下发布。有关详细信息,请参见LICENSE
。
联系人
jip j.dekker
- 推特:@DekkerOne
- Github:Dekker1
minizinc