Prolog 列表合并问题?

2023-12-08

如何合并这样的两个列表?

[a,b,c] 

[1,2,3]

我想列出这个清单

[a=1,b=2,c=3]. 

我怎样才能做到这一点? (我使用 swi prolog)

Thanks for your answers. I have a question about it. I write

start:- consult('tennis.pl'),
            see('tennis.pl'),
            repeat,
            read(A),
            A=..List,
            (A\=end_of_file->
            (A\=end_of_file,member('attributes',List)->
            delete(List,'attributes',NewList2);true),
            (A\=end_of_file,member('data',List)->
            delete(List,'data',NewList);true),
            merge(NewList2,NewList,Try),
            write(Try),nl;true),
            A=end_of_file,!,

            seen.


[outlook=_G40,temperature=_G49,humidity=_G58,wind=_G67,play_tennis=_G76]
[_G40=sunny,_G49=hot,_G58=high,_G67=weak,_G76=no]
[_G40=sunny,_G49=hot,_G58=high,_G67=strong,_G76=no]
[_G40=overcast,_G49=hot,_G58=high,_G67=weak,_G76=yes]
[_G40=rain,_G49=mild,_G58=high,_G67=weak,_G76=yes]
[_G40=rain,_G49=cool,_G58=normal,_G67=weak,_G76=yes]
[_G40=rain,_G49=cool,_G58=normal,_G67=strong,_G76=no]
[_G40=overcast,_G49=cool,_G58=normal,_G67=strong,_G76=yes]
[_G40=sunny,_G49=mild,_G58=high,_G67=weak,_G76=no]
[_G40=sunny,_G49=cool,_G58=normal,_G67=weak,_G76=yes]
[_G40=rain,_G49=mild,_G58=normal,_G67=weak,_G76=yes]
[_G40=sunny,_G49=mild,_G58=normal,_G67=strong,_G76=yes]
[_G40=overcast,_G49=mild,_G58=high,_G67=strong,_G76=yes]
[_G40=overcast,_G49=hot,_G58=normal,_G67=weak,_G76=yes]
[_G40=rain,_G49=mild,_G58=high,_G67=strong,_G76=no]

但我有这个结果。为什么?您对此有什么想法吗?


谓词可能如下所示:

   merge([], [], []).
   merge([X|Xs], [Y|Ys], [X=Y|Zs]) :- merge(Xs, Ys, Zs).

您从空列表的基本情况开始,并按情况归纳两个具有相同长度的列表。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Prolog 列表合并问题? 的相关文章

  • 将元组列表转换为字符串 Python

    例如 我用 python 编写了一个返回列表的函数 1 1 2 2 3 3 但我希望输出为字符串 这样我就可以用另一个字符替换逗号 这样输出就是 1 1 2 2 3 3 有什么简单的方法可以解决这个问题吗 感谢您提前提供任何提示 这看起来像
  • Python 的二进制字符串列表

    我有一个像这样的二进制字符串 1100011101 我想将其解析为一个列表 其中每个 1 或 0 块都是列表中的单独值 例如 1100011101 变成 11 000 111 0 1 您可以通过使用正则表达式而不是从中获得一点 次要 性能g
  • 将多列列表拆分为单独的行

    我有一个像这样的数据框 df pd DataFrame key 1 2 3 4 col1 apple orange pineapple guava orange apple col2 087 799 681 078 816 018 key
  • SwiftUI 从一个列表拖动到另一个列表

    我正在尝试在列表之间拖放 我尝试过的 我找到了一个在 UIKIt 中执行此操作并使用 UIViewControllerRepresentable 的解决方案 但这不是我想要的 另一个解决方案是在列表上使用 onDrag 但这在 iPad 上
  • 创建动态对象

    如何动态创建对象 string columnNames EmpName EmpID PhoneNo List
  • 在Python中创建一个二维矩阵

    我创建了一个 6x5 二维数组 最初每个单元格中只有 None 然后 我读取一个文件 并在读取文件时用数据替换 None 我首先创建空数组 因为数据在我正在读取的文件中的顺序未定义 我的第一次尝试是这样做的 x None 5 6 这导致了一
  • 存储整数列表的最有效方法

    我最近一直在做一个项目 其中一个目标是使用尽可能少的内存来使用 Python 3 存储一系列文件 除了一个整数列表之外 几乎所有文件都占用很少的空间 大致333 000整数长且整数可达约8000在尺寸方面 我目前正在使用pickle存储列表
  • 嵌套 NumPy 数组并使用拆分等方法

    我是 NumPy 的新手 正在尝试在我的代码中使用它来处理某些表 我有一个如下所示的坐标列表 coordinates 2 0 0 1 3 4 并想这样写 coordinatesNumpy np array 2 0 0 1 3 4 在常规 P
  • Python列表错误还是我错了?

    我构建了一个 3 级嵌套列表 run on Python 3 2 3 32 bit on Win 7 L2 list 0 for i in range 2 L3 list L2 for i in range 3 L4 list L3 for
  • Prolog中计算数字是否为素数

    我正在尝试计算输入是否是素数 但出了问题 这是我的代码 primeNumber X prime prime A 1 prime prime A B R is A mod B R 1 R A prime prime X B B lt A Ne
  • Python 中列表的线性合并

    我正在努力通过Google 的 Python 课堂练习 http code google com edu languages google python class index html 其中一个练习是这样的 给定两个按升序排序的列表 创建
  • 合并来自并行 Subversion 存储库的更新代码

    我想知道人们在将实时 持续更新的 SVN 存储库与离线存储库 更新频率较低 合并时通常会采取哪些步骤 以我的场景为例 不久前我下载了BugTracker NET系统 当时它的版本是3 2 3 随后我对我们业务的代码进行了一些增强 我们使用
  • `list()` 被认为是一个函数吗?

    list显然是内置类型 https docs python org 3 library stdtypes html list在Python中 我看到底下有一条评论this https stackoverflow com a 53645813
  • 获取所有ios应用程序的全局列表[重复]

    这个问题在这里已经有答案了 我想对苹果应用商店进行一些全球统计 一个瓶颈是至少获取所有当前活动应用程序的 ID 这 9 位数字 有谁知道如何获取 iOS 应用商店中当前活动应用程序的所有 id 的完整列表 更好的是特定类别的所有 ID 例如
  • 将 X 插入到排序列表中的正确位置

    在序言中 如何将 X 插入到排序列表中的正确位置 我的尝试 insert X Y Rest X Y Rest X lt Y insert X Rest BiggerRest 您的方向是正确的 但您需要解决这三个问题 insert X X i
  • python 中分割字符串以获得一个值?

    需要帮助 假设我在名为 input 的变量中有一个字符串 Sam Person name kind input split 通过执行上述操作 我得到两个具有不同字符串 Sam 和 Person 的变量 有没有办法只获取第一个值 name S
  • 使用 data.table 左连接

    假设我有两个数据表 s dataA A B 1 1 12 2 2 13 3 3 14 4 4 15 dataB A B 1 2 13 2 3 14 我有以下代码 merge test merge dataA dataB by A all d
  • 获取列表中倒数第二个元素[重复]

    这个问题在这里已经有答案了 我可以通过以下方式获取列表的倒数第二个元素 gt gt gt lst a b c d e f gt gt gt print lst len lst 2 e 有没有比使用更好的方法print lst len lst
  • SWI Prolog 转义引号

    我需要在序言中将 放在字符串周围 我从另一个程序获取输入 看起来我无法转义该程序中的 因此我必须在序言中添加 否则序言语句将不起作用 感谢您的帮助 为了讨论strings https stackoverflow com a 39922411
  • Python3 查找 2 个列表中有多少个差异才能相等

    假设我们有 2 个列表 always具有相同的长度和always包含字符串 list1 sot sot ts gg gg gg list2 gg gg gg gg gg sot 我们需要找到 其中有多少项list2应该改变 以便它等于lis

随机推荐

  • 强制 Emmet (VS Code) 内嵌所有缩写

    我经常使用以下方法将部分 HTML 文本包装在标签内Emmet in VS Code 命令是 Emmet Wrap with Abbreviation Windows 上为 Alt Shift W 是否可以强制 Emmet 将我的所有选择内
  • 何时使用右值引用

    所以基本上我的问题是 什么时候应该使用右值引用 在这个例子中 我正在研究一个记录器类 它只是将内容记录到控制台 我有不同的功能来记录不同日志级别的消息 它们接受 std string 作为参数 每个函数是否应该有两个版本 第一个用于 正常
  • PHP 属性作为对象

    是否可以将类的属性设置为对象 Like class User public x public y new ErrorVO public w new array 在构造函数中 是的 class User public x public y n
  • 为什么内联事件处理程序属性在现代语义 HTML 中是一个坏主意?

    内联事件处理程序被认为是一种不好的做法吗 例如
  • 如何使用 LISTAGG 返回带引号前缀的行

    我正在尝试返回对于在查询中设置 in 条件有用的行 这是我的查询 SELECT LISTAGG PRODUCTID WITHIN GROUP ORDER BY RowSequence FROM DWRE ITEM V 返回订单1 订单2 我
  • CPU使用率(top的输出)总和怎么会超过100%呢?

    我正在编写一个小 python 脚本来测试一些东西 稍后我想用它通过 gnuplot 创建资源使用图 但首先进行一些测试 脚本看起来像 import subprocess result subprocess check output top
  • 如何链接到 Multimarkdown 中的命名锚点?

    我曾多次提到 MultiMarkdown 对内部链接 命名锚点的支持 但我无法找到如何实际执行此操作的单个示例 那么 表示命名锚点的语法是什么 链接到它的语法是什么 与链接到任何其他 URL 相同 仅使用 foo 而不是http 在标准 M
  • asmack 中的 ReconnectionManager

    我有一个Android项目 需要使用asmack库来实现实时聊天 关键功能是重新连接机制 这意味着我的应用程序可以在互联网连接丢失时自动重新连接 这是我的代码片段 ConnectionConfiguration connConfig new
  • VS 22 缓冲区溢出中的 C6386 警告

    我正在尝试创建一个函数 该函数获取矩阵并将其列向右或向左移动 具体取决于用户的重复输入 在执行此操作时 我注意到编译器警告 C6386 C6001 C6385 都在同一代码区域中 但我找不到问题 警告 C6386 写入 temp row 时
  • Bootstrap 4:将“滚动到第一个无效字段”添加到“如果无效则不要“提交”脚本)

    我在用Bootstrap 4如果以下脚本中的任何字段无效 我将停止提交表单 我试图弄清楚 到目前为止没有成功 我需要在 之后添加什么代码event stopPropagation 以使表单滚动到找到的第一个无效字段 感谢您的帮助 谢谢 Fo
  • 仅在 Woocommerce 3 中显示基于标签的相关产品

    默认情况下 单个产品页面上的 Woocommerce 根据类别显示相关产品 相关产品滑块将显示相同类别的产品 Woocommerce 文档指出 相关产品是一些模板的一部分 这些模板从您的商店中提取与当前产品共享相同标签或类别的产品 这些产品
  • 使用 HTTP 状态代码时区分基础架构和业务逻辑

    我们正在尝试构建一个 REST 接口 允许用户测试特定资源是否存在 假设我们正在销售域名 用户需要确定该域名是否可用 An HTTP GET结合200 and 404乍一看 响应代码似乎很合理 我们遇到的问题是区分查找服务成功服务的请求和其
  • iOS setContentOffset 在 ipad 上不起作用

    这实在是太奇怪了 我有一个包含三个图像的滚动视图 用户滑动以查看下一个图像 但是 我希望第一个屏幕从中间图像开始 简单的 我将使用 setContentOffset 一切都会好起来的 该代码适用于 iPhone 模拟器 但不适用于 iPad
  • Spring Batch FlatFileItemReader 继续处理错误数量的令牌

    我正在使用 Spring BatchFlatFileItemReader解析 csv 文件 我时不时地收到格式错误的行 并且应用程序完全崩溃 Caused by org springframework batch item file tra
  • Django Rest Framework 可写嵌套序列化器

    我正在编写一个食谱组织器作为课程的示例项目 除了使用一些非常基本的功能之外 我对 DRF 没有太多经验 这是目标 使用相关成分创建一个新食谱 在创建 Recipe 对象的同时创建 Ingredient 对象 模型 py class Ingr
  • JQuery - 禁用滚轮直到动画完成

    我试图在鼠标滚轮事件上禁用鼠标滚轮 并仅在操作完成后才启用它 window on DOMMouseScroll mousewheel function event disable mousewhell until the following
  • Codeigniter - 如何在视图中包含动态 javascript 文件

    如果满足某些条件 我尝试在标题视图中包含以下代码块 其中包含一些动态值
  • 如何运行大内存的dart程序?

    我试图在 dart 程序中读取一个非常大的文件 超过 1G 但它抛出内存不足异常 如何配置命令行以使其以更大的内存运行 就像 Xmx1G in Java VM 有一个增加堆大小的标志 old gen heap size 例如 old gen
  • Objective-C 自动释放池不释放对象

    我对 Objective C 很陌生 正在阅读内存管理 我试图用 NSAutoreleasePool 玩一下 但不知何故它不会释放我的对象 我有一个带有 setter 和 getter 的类 它基本上设置一个 NSString name 释
  • Prolog 列表合并问题?

    如何合并这样的两个列表 a b c 1 2 3 我想列出这个清单 a 1 b 2 c 3 我怎样才能做到这一点 我使用 swi prolog Thanks for your answers I have a question about i