Код пролога в python с выводами Pyswip "Нет" - PullRequest
0 голосов
/ 08 января 2020

Я установил пакет pyswip и попробовал следующий код:

from pyswip import Prolog,Query

prolog = Prolog()
prolog.assertz("minTime(4,Y):-Y>=4")

res = prolog.query("minTime(4,5)")
print(res)

, но он выдает «Нет». Он должен выводить «True» в Swi-Prolog. Я хочу знать, как вывести «True» в python.

1 Ответ

0 голосов
/ 08 января 2020

Если вы попробуете help(prolog), вы найдете ответ.

res - это объект-генератор Python, который должен быть преобразован в список Python, который должен быть преобразован до Python bool, то есть

>>>bool(list(prolog.query("minTime(4,4)")))
True
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...