Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在查询 Prolog 数据库时,通常会使用以大写字母开头的术语作为变量。但是,假设您查询的一个约束条件是一个人的位置必须是“达拉斯”,并且您想要查询数据库中符合这些规范的所有信息。您将如何正确确保 Dallas 不被解释为存储值的变量,而是被解释为字符串,以用作查询的约束?
只需将达拉斯包装成单引号 : 'Dallas'。顺便说一句,这不是一个字符串,而是一个原子。例如,在具有默认设置的 Swi-Prolog 中,字符串将是:
'Dallas'
?- X = "hello". X = [104, 101, 108, 108, 111].
虽然原子将是
?- X = 'hello'. X = hello.
它们都有自己的一组谓词和语义。