当前位置: 首页 > news >正文

每日学习python(十)

今天我们来学习有关于集合的一系列操作。

一、查找不同元素

关键函数:

numpy.setdiff1d(ar1, ar2, assume_unique=False)

参数:

参数

描述

ar1

数组/列表。作为被减数的集合。

ar2

数组/列表。作为减数的集合。

assume_unique

(布尔值,默认False)。如果设置为True,则函数会假定输入数组已经是唯一的,可以跳过内部的去重步骤,从而提高速度。

简单例子:

# -*- coding: utf-8 -*- import numpy as np #查找在A但不在B中的元素 A = np.array([10,20,30,40,50]) B = np.array([30,40,60,70]) different_elements = np.setdiff1d(A,B) print(f"在A但不在B中的元素:{different_elements}") different_elements_1 = np.setdiff1d(B,A) print(f"在B但是不在A中的元素:{different_elements_1}")

结果:

二、查找公共元素

关键函数:

numpy.intersect1d(ar1, ar2, assume_unique=False, return_indices=False)

参数:

参数

描述

ar1,ar2

数组/列表。要计算交集的两个输入集合。

assume_unique

(布尔值,默认False)。如果为True,则跳过去重以提高性能。

return_indices

(布尔值,默认False)。如果为True,还会返回三个额外的数组:交集元素在ar1中的索引、交集元素在ar2中的索引,以及交集结果数组。

简单例子:

x = np.array([1,2,3,4,5,1]) y = np.array([2,3,6,5,1]) commen_elements = np.intersect1d(x,y) print(f"x与y公共的元素是:{commen_elements}") inter, ar1_inds, ar2_inds = np.intersect1d(x, y, return_indices=True) print(f"交集元素: {inter}") print(f"在 x 中的原始索引: {ar1_inds}") print(f"在 y 中的原始索引: {ar2_inds}")

结果:

三、合并数组元素

关键函数:

numpy.union1d(ar1, ar2)

参数:

参数描述
ar1,ar2数组/列表。要计算并集的两个输入集合。

简单例子:

arr1 = np.array([10,20,30]) arr2 = np.array([20,30,40,60,80]) union_elements = np.union1d(arr1,arr2) print(f"arr1和arr2的并集:{union_elements}")

结果:

四、从两个数组中提取唯一元素

关键函数:

numpy.setxor1d(ar1, ar2, assume_unique=False)

参数:

参数描述
ar1,ar2数组/列表。要计算对称差集的两个输入集合。
assume_unique(布尔值,默认False)。如果为True,则跳过去重以提高性能。

简单例子:

a = np.array([10,20,30,40]) b = np.array([30,40,50,60]) xor_elements = np.setxor1d(a,b) print(f"a和b的差集:{xor_elements}")

结果:

总结代码:

# -*- coding: utf-8 -*- import numpy as np #查找在A但不在B中的元素 A = np.array([10,20,30,40,50]) B = np.array([30,40,60,70]) different_elements = np.setdiff1d(A,B) print(f"在A但不在B中的元素:{different_elements}") different_elements_1 = np.setdiff1d(B,A) print(f"在B但是不在A中的元素:{different_elements_1}") x = np.array([1,2,3,4,5,1]) y = np.array([2,3,6,5,1]) commen_elements = np.intersect1d(x,y) print(f"x与y公共的元素是:{commen_elements}") inter, ar1_inds, ar2_inds = np.intersect1d(x, y, return_indices=True) print(f"交集元素: {inter}") print(f"在 x 中的原始索引: {ar1_inds}") print(f"在 y 中的原始索引: {ar2_inds}") arr1 = np.array([10,20,30]) arr2 = np.array([20,30,40,60,80]) union_elements = np.union1d(arr1,arr2) print(f"arr1和arr2的并集:{union_elements}") a = np.array([10,20,30,40]) b = np.array([30,40,50,60]) xor_elements = np.setxor1d(a,b) print(f"a和b的差集:{xor_elements}")
http://www.jsqmd.com/news/74217/

相关文章:

  • GLM-4.5系列开源模型发布:重新定义智能体基座的技术边界与商业价值
  • Wan2.2-T2V-A14B模型在视频广告A/B测试中的快速迭代优势
  • 代码智能新纪元:Qwen3-Coder国产大模型技术架构与开发实战全攻略
  • Day 28 函数的定义与参数
  • Wan2.2-T2V-A14B生成金融财经图表动态演示视频的案例
  • 高分辨率视频生成难题破解:Wan2.2-T2V-A14B实测报告
  • DevUI modal 弹窗表单联动实战:表格编辑功能完整实现
  • 模板生成能力终极对决:ERNIE-4.5与DeepSeek技术深度测评报告
  • 深度学习中 z-score 标准化理解
  • 9 个专科生课堂汇报工具推荐,AI 写作降重神器
  • 别再乱装工具了!7 款最佳渗透测试工具(超详细),收藏这篇就够了
  • 救命!网安技能不用瞎找了:渗透 / 运维 / 应用安全详细图谱 + 工具包
  • 深度解析HiPO:大语言模型动态推理的革命性突破——从AutoThink范式到混合策略优化的技术演进
  • IwaraDownloadTool 2025终极指南:零基础快速下载Iwara视频的完整教程
  • Transformer 面试题
  • 251212
  • LangChain
  • B站视频下载新纪元:DownKyi如何重新定义你的内容收藏体验
  • 比话降AI适合哪些人使用?为什么比话的降ai效果这么好?
  • 比话降AI的效果为什么这么好?去除ai痕迹的原理是什么?
  • Wan2.2-T2V-A14B在古生物复原动画中的科学复现水平
  • VSCode远程调试量子服务实战手册(从入门到精通)
  • 大模型应用:语音转文本(ASR)实践:OpenAI Whisper精准转录解析.21
  • Wan2.2-T2V-A14B如何应对‘一只狗追着两只猫’这类复杂指令?
  • Kingbase 一键巡检报告工具试用,官方工具真的是很到位!
  • 数控立柱滑台采购指南:如何避开价格陷阱选对硬核装备?
  • Wan2.2-T2V-A14B模型推理延迟优化的五种有效手段
  • Wan2.2-T2V-A14B在儿童教育动画创作中的合规性考量
  • QCoreApplication::aboutToQuit 可以链接多个槽函数吗
  • B站视频下载终极指南:哔哩下载姬完全使用手册