news 2026/1/19 13:09:51

每日学习python(十)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
每日学习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}")
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/18 17:38:35

硬件测试面试题 - 模拟面试|AI面试官

易途AI面试官 – AI 模拟面试助你提升拿到 Offer 的成功率 点击开始模拟练习 👉 ms.laixiai.com 必备技能 电子工程基础知识:扎实的模拟电路、数字电路、信号处理、电路原理和半导体物理知识是基石。能够深入理解电子元器件的工作原理、电路设计与分析技…

作者头像 李华
网站建设 2026/1/18 20:38:22

QCoreApplication::aboutToQuit 可以链接多个槽函数吗

是的,QCoreApplication::aboutToQuit 信号可以连接多个槽函数。以下是详细解析:1. 信号槽机制特性Qt的信号槽机制支持“一对多”:一个信号(如aboutToQuit)可连接多个槽函数。当信号触发时,所有已连接的槽函…

作者头像 李华
网站建设 2026/1/17 8:42:30

VLAN实验

搭建拓扑图:创建VLAN:在trunk干道上放行VLAN:查看交换机接口与VLAN的对应关系:路由器接口配置:配置dhcp:主机获取IP地址:测试:经测试全网可通。实验总结:实验核心收获1. …

作者头像 李华
网站建设 2026/1/19 0:34:20

Wan2.2-T2V-A14B模型对不同肤色人种的表现公平性评估

Wan2.2-T2V-A14B模型对不同肤色人种的表现公平性评估 在影视广告、社交媒体和数字内容工厂日益依赖AI生成视频的今天,一个看似技术中立的系统,是否真的能平等地“看见”所有人?当用户输入“一位非洲裔女性在阳光下跳舞”,模型生成…

作者头像 李华
网站建设 2026/1/18 17:07:24

CTF竞赛系统、知识竞赛系统、漏洞靶场练习系统

工具介绍 网络安全综合学习系统一个符合中文逻辑的网络安全综合学习系统。整合了贴合中文操作逻辑的CTF竞赛系统、知识竞赛系统、漏洞靶场练习系统、WIKI知识库管理系统、工具管理及招聘岗位发布等核心功能模块,全面覆盖竞赛组织、技能实训、知识沉淀、资源管理与人…

作者头像 李华
网站建设 2026/1/17 9:04:07

云主机Agent权限失控?AZ-500安全专家教你3招紧急封堵

第一章:云主机Agent权限失控?AZ-500安全专家教你3招紧急封堵当云主机上的监控或运维 Agent 拥有超出必要范围的权限时,极易成为攻击者横向移动的跳板。Azure 安全认证专家(AZ-500)建议立即采取以下三项关键措施&#x…

作者头像 李华