确定 2 个列表是否具有相同的元素,无论顺序如何? [复制]

2023-12-01

抱歉这个简单的问题,但我很难找到答案。

当我比较两个列表时,我想知道它们是否“相等”,因为它们具有相同的内容,但顺序不同。

Ex:

x = ['a', 'b']
y = ['b', 'a']

I want x == y评估为True.


您可以简单地检查包含 x 和 y 元素的多重集是否相等:

import collections
collections.Counter(x) == collections.Counter(y)

这要求元素是可散列的;运行时将在O(n), where n是列表的大小。

如果元素也是唯一的,您也可以转换为集合(相同的渐近运行时,在实践中可能会更快一点):

set(x) == set(y)

如果元素不可散列,但可排序,则另一种选择(运行时O(n log n)) is

sorted(x) == sorted(y)

如果元素既不可散列也不可排序,您可以使用以下辅助函数。请注意,它会很慢(O(n²))并且通常应该not可以在不可散列和不可排序元素的深奥情况之外使用。

def equal_ignore_order(a, b):
    """ Use only when elements are neither hashable nor sortable! """
    unmatched = list(b)
    for element in a:
        try:
            unmatched.remove(element)
        except ValueError:
            return False
    return not unmatched
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

确定 2 个列表是否具有相同的元素,无论顺序如何? [复制] 的相关文章

  • 如何测试顶级窗口是否打开?

    我感觉 Python 编程可能不是我的菜 我创建了一个 tkinter GUI 它使用按钮回调来打开另一个窗口 其他搜索说这个窗口应该是顶级窗口 并且它工作得很好 但是每次按下按钮时它都会打开另一个相同的窗口 如据我所知 窗口 问题 如何测
  • 使用 Marshmallow 中的数据更新行 (SQLAlchemy)

    我正在使用 Flask Flask SQLAlchemy Flask Marshmallow marshmallow sqlalchemy 尝试实现 REST api PUT 方法 我还没有找到任何使用 SQLA 和 Marshmallow
  • Python:多处理和请求

    以下是我正在运行的使用多处理并行触发 HTTP 请求的代码片段 在控制台上运行后 它挂在 requests get url 处 既不继续前进也不抛出错误 def echo 100 q print before r requests get
  • 如何配置散景图以具有响应宽度和固定高度

    我使用通过组件功能嵌入的散景 实际上我使用 plot sizing mode scale width 它根据宽度进行缩放并保持纵横比 但我想要一个响应宽度但固定或最大高度 这怎么可能实现呢 有stretch both and scale b
  • 错误只有 size-1 数组可以转换为 Python 标量

    我有这个代码 for a in data X for i in a if not i isdigit x hash i data X column row x row row 1 row 0 column column 1 desired
  • 按 ListProperty (NDB) 对查询进行排序

    如何按 ListProperty 对查询进行排序 该模型 class Chapter ndb Model title ndb StringProperty required True version ndb IntegerProperty
  • 如何编写高效的配对算法?

    我需要一种算法的帮助 该算法可以有效地将人们分组 并确保以前的配对不会重复 例如 假设我们有 10 位候选人 candidates 0 1 2 3 4 5 6 7 8 9 并假设我们有一个先前匹配的字典 这样每个键值对即candidate
  • 使用 K 均值聚类 OpenCV 进行交通标志分割

    I used K Means Clustering to perform segmentation on this traffic sign as shown below 这些是我的代码 读取图像并模糊 img cv imread 000
  • Python 3.x 中的 PIL ImageTk 等效项

    我正在使用 Tkinter 开发一个应用程序 它使用以下数据库png图标的图像文件 为了在应用程序中使用所述图像 我使用 PIL 打开它们Image open 运行它通过ImageTk PhotoImage函数 然后将其传递给小部件构造函数
  • 从文档字符串生成 sphinx 文档不起作用

    我有一个具有以下结构的项目 我想保留 my project build here is where sphinx should dump into requirements txt make bat Makefile more config
  • 如何在 Numpy 中实现垃圾收集

    我有一个名为main py 它引用另一个文件Optimisers py它仅具有功能并用于for循环进入main py 这些函数都有不同的优化功能 This Optimisers py然后引用另外两个类似的文件 其中也只有函数 它们位于whi
  • 如何在 Spyder IDE 中安装 Selenium 包

    我刚刚在工作中安装了 Spyder IDE 仅 Spyder 不是整个 Anaconda 并且希望使用 FireFox 自动化我的工作 我的问题是 如何安装 Selenium 软件包 I figured it out Here is ins
  • 写入 UDP 套接字会被阻塞吗?

    如果是的话 在什么条件下 或者 换句话说 在twisted 中运行此代码是否安全 class StatsdClient AbstractStatsdClient def init self host port super StatsdCli
  • 如何使用 python-gnupg 加密大型数据集而不占用所有内存?

    我的磁盘上有一个非常大的文本文件 假设它是 1 GB 或更多 还假设该文件中的数据有 n每 120 个字符一个字符 我在用python gnupg https pythonhosted org python gnupg 对此文件进行加密 由
  • 如何在包更新之间保留数据文件?

    我正在使用data files的论证setuptools setup 将配置文件安装到 etc和用户主目录 但是更新包pip install
  • 对 pandas 数据框中的每一列应用函数

    我如何以更多的熊猫方式编写以下函数 def calculate df columns mean self df means for column in df columns columns tolist cleaned data self
  • 在python中将列表转换为字符串

    我对 python 语言相当陌生 我一直在寻找这个问题的答案 我需要一个如下所示的列表 Kevin went to his computer He sat down He fell asleep 转换为如下字符串 Kevin went to
  • “sizeof”对不完整类型列表结构 C 的无效应用

    我正在尝试实现一种处理页面错误的替换算法 因此 我尝试使用 malloc 创建一个循环链表 但出现以下错误 无效的应用程序sizeof to incomplete typepageInMemory 以下是代码 typedef struct
  • 如何在 Python 中解析损坏的 XML?

    我无法影响的服务器发送的 XML 非常损坏 具体来说 Unicode WHITE STAR 将被编码为 UTF 8 E2 98 86 然后使用 Latin 1 转换为 HTML 实体表 我得到的是 acirc 98 86 9 个字节 位于声
  • 在 Gensim 中通过 ID 检索文档的字符串版本

    我正在使用 Gensim 进行一些主题建模 并且已经达到使用 LSI 和 tf idf 模型进行相似性查询的程度 我取回 ID 集和相似点 例如 299501 0 64505910873413086 如何获取与 ID 在本例中为 29950

随机推荐

  • 如何让 Phoenix 监听 IPv6?

    我正在努力寻找有关让 Phoenix 以及 Cowboy 和 Ranch 同时监听 IPv4 和 IPv6 的信息 我在 Ubuntu 16 04 的 VPS 上运行 它同时具有 IPv4 和 IPv6 地址 跑步时netstat tulp
  • 在单独的线程中关闭相机设备

    我正在使用 Android Camera2 创建自定义相机 cameraDevice close 方法速度很慢 并且会使 UI 冻结 1 秒 我把它放在另一个线程中 看起来效果很好 我想知道这是否会导致一些严重的问题以及是否有其他方法可以实
  • omp_set_num_threads(1) 比没有 openmp 慢的原因

    相信大家都同意这篇文章的标题 有人能指出我的原因吗 有没有参考书之类的 我试图找到但没有运气 我相信原因是 openmp 有同步开销 没有 openmp 项目没有 希望有人能进一步扩展原因吗 Thanks 虽然即使只有一个线程 使用 Ope
  • BigQuery:如何将库加载到java代码中

    我是 Bigquery 的新开发人员 我正在遵循教程https developers google com bigquery bigquery api quickstart带有 Java 代码和导入的库https developers go
  • JVM是否保证缓存非易失性变量?

    JVM是否保证缓存非易失性变量 程序员是否可以依赖 JVM 始终在本地为每个线程缓存非易失性变量 或者 JVM 可能会也可能不会这样做 因此程序员不应该依赖 JVM 来做到这一点 感谢您提前的答复 不 JVM 不保证非易失性字段的 缓存 J
  • Gremlin - 随机选择一项

    将我视为 用户 1 查询的目的是获取我关注的人 发布 的帖子 并对每个帖子进行检查 是否已被我喜欢过 我关注的其他人是否喜欢它 如果是随机选择其中一位用户返回 样本数据 g addV user property id 1 as 1 addV
  • OpenCV 从标准输入加载图像/视频

    我正在尝试使用以下代码从 stdin 读取 jpg 图像 int c count 0 vector
  • 在 Xcode 7 中构建 Parse 时出现链接错误

    我正在尝试将 Parse com SDK 添加到我的 Xcode 7 项目中 我已经遵循了入门指南 并且之前已经在 Xcode 6 中成功做到了 然而 这次当我尝试构建时 我收到了此错误消息 ld framework not found B
  • 列表视图列标题不显示 VB.Net

    我没有在 listView 中获取列标题 仅显示一项 0 不显示子项 这是我的代码 告诉我其中有什么问题 先感谢您 Dim PTCode As Integer CInt ChildPatnameTag ClearSQl CheckState
  • 部署项目中的安装目录

    我正在开发一个应用程序 我将在部署项目 将创建一个安装程序 的帮助下部署它 在安装程序的一个步骤中 用户将允许更改应用程序的安装文件夹 我需要知道这个文件夹是什么 因为那里保存了一些我需要从另一个 DLL 文件中使用的文件 如何以编程方式获
  • AutoCompleteTextView 未从 Google Places API 获取建议

    这是我从 Google Places API 获取地点建议的代码 但它显示一些错误 例如 无法连接到 Google Places API 我已经给出了在这段代码的底部得到的正确错误 我只需要一个 AutoCompleteTextView 来
  • 是否可以在 java (log4j) 中记录方法调用?

    是否可以在 log4j Java 中记录任何方法调用 Thanks 不 如果不编辑调用站点或方法本身就不行 我认为您所追求的是面向方面的编程 看一下AspectJ例如
  • 使用 Nodejs 实时抓取聊天记录

    我想做的是建立一个scrapingNodeJs 上的应用程序 它可以实时监控聊天并将某些消息存储在任何数据库中 我想做的是以下内容 我想从聊天平台流中捕获数据 从而捕获一些有用的信息来帮助那些正在做流媒体服务的人 但我不知道如何开始使用 N
  • Python unicode 解码错误 SUD

    好的 我有 coding utf 8 在我的脚本的顶部 它可以从数据库中提取数据 其中包含有趣的字符 并将该数据存储到变量中 但是我遇到其他问题 请参阅我提取数据 组织它 然后将其转储到变量中 如下所示 title product 1 Wh
  • 通过 Web 应用程序启动 Spark 应用程序的最佳实践?

    我想通过 Web 应用程序向用户公开我的 Spark 应用程序 基本上 用户可以决定他想要运行哪个操作并输入一些变量 这些变量需要传递到 Spark 应用程序 例如 用户输入几个字段 然后单击一个按钮 该按钮执行以下 运行火花应用1带参数
  • `eli5.show_weights` 显示的标准差与 `feature_importances_std_` 中的值不一致

    The PermutationImportance对象有一些很好的属性 例如feature importances and feature importances std 为了以 HTML 样式可视化此属性 我使用了eli5 show we
  • THREE.js 动态添加点到 Points 几何体不渲染

    我正在使用 Three js r83 我试图动态地将点添加到几何体中 但场景永远不会更新 这有效 var tmaterial new THREE PointsMaterial color 0xff0000 size 5 opacity 1
  • 设计问题:std::map的线程安全

    我正在使用 std map 来实现我的本地哈希表 该哈希表将同时被多个线程访问 我做了一些研究 发现 std map 不是线程安全的 所以我将使用互斥体在地图上进行插入和删除操作 我计划有单独的互斥锁 每个映射条目都有一个互斥锁 以便可以独
  • C++ 数组:为什么 delete[] 不起作用? [复制]

    这个问题在这里已经有答案了 当我运行以下代码时 include
  • 确定 2 个列表是否具有相同的元素,无论顺序如何? [复制]

    这个问题在这里已经有答案了 抱歉这个简单的问题 但我很难找到答案 当我比较两个列表时 我想知道它们是否 相等 因为它们具有相同的内容 但顺序不同 Ex x a b y b a I want x y评估为True 您可以简单地检查包含 x 和