如何使用pyswip在Prolog中获取函子字符串

2024-10-03 15:29:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我开发了python应用程序,通过pyswip连接到Prolog。在

下面是我执行的Prolog部分的一个例子。在

init( Board) :-
  Board = b(n,x,n,x,n,x,n,x,x,n,x,n,x,n,x,n,n,x,n,x,n,x,n,x,e,n,e,n,e,n,e,n,n,e,n,e,n,e,n,e,o,n,o,n,o,n,o,n,n,o,n,o,n,o,n,o,o,n,o,n,o,n,o,n).

执行以下代码时

^{pr2}$

解决方案[0]是

<'B': 'Functor6905740'>

我怎样才能得到b(n,x,n,x,…)而不是函子引用?在

我使用所有64位:python2.7、SWI-Prolog、pyswip、visualstudio2013


Tags: 代码board应用程序init解决方案prologswi例子
1条回答
网友
1楼 · 发布于 2024-10-03 15:29:01

我找到了自己的解决办法。
我导入函子,变量,查询

from pyswip import Prolog, Functor, Variable, Query

为了得到函子值,我使用

^{pr2}$

然后,程序将打印出来

^{3}$

相关问题 更多 >