从文件中读取事实

时间:2011-05-02 10:57:14

标签: prolog

我有天气,风等词语。

我试图从这些话中提出一个事实。

属性(天气,风)

你有什么想法吗?

非常感谢

1 个答案:

答案 0 :(得分:2)

您可能需要assert/2,但在不知道您需要什么样的事实的情况下,很难说出您应该如何使用它。

如果您可以从文件中读取原子,则可以在fact/1项中逐个断言:

assert_from_stream(Stream) :-
    read(Stream, X),
    assert(fact(X)).

请务必使用

声明fact/1(或用于存储事实的任何内容)
:- dynamic fact/1.

具有多个参数的事实以相同的方式工作:assert(attributes(weather, wind))在声明dynamic attributes/2之后。