10个Python set 常用操作函数!

今天为大家带来的内容是10个Python set 常用操作函数!(附带详细解答)文章内容具有不错的参考意义,希望在此能够对各位有所帮助。

集合对象是一组无序排列的可哈希的值,集合成员可以做字典中的键。集合支持用in和not in操作符检查成员,由len()内建函数得到集合的基数(大小), 用 for 循环迭代集合的成员。但是因为集合本身是无序的,不可以为集合创建索引或执行切片(slice)操作,也没有键(keys)可用来获取集合中元素的值。

set和dict一样,只是没有value,相当于dict的key集合,由于dict的key是不重复的,且key是不可变对象因此set也有如下特性:

  1. 不重复
  2. 元素为不可变对象

python提供了常用的数据结构,其中之一就是set,python中的set是不支持索引的、值不能重复、无需插入的容器。

简单记录下set常用的操作函数:

1.新建一个set:

set("Hello"),这样会转成单个字符的值进行插入,结果是‘H‘,‘e‘,‘l‘,‘o‘,‘l‘因为重复只能插入一次。

2.增加一个元素:

add()用于增加一个元素值,update([]),用于增加多个元素值,参数为list,注意如果用add增加多个值,会报参数类型错误

3.删除一个元素:

remove()用于删除一个set中的元素,这个值在set中必须存在,如果不存在的话,会引发KeyError错误。discard()用于删除一个set中的元素,这个值不必一定存在,不存在的情况下删除也不会触发错误。

4.随机删除函数:

set提供了一个pop()函数,这个函数随机返回一个元素值,然后把这个值删除,如果set为空,调用这个函数会返回Key错误。

5.清空函数:

clear(),将set全部清空。

6.测试单个元素在集合内是否存在:

in 或者 not in 如果需要判断一个值在集合内是否存在,in就能满足要求,例如2 in set_num 如果存在则返回True,否则返回False。

7.测试两个集合是否包含,子集操作:

issubset和issuperset,s1.issubset(s2) :测试是否 s1 中的每一个元素都在 s2 中,运算符操作为 s1<=s2;s2.issuperset(s1) :测试是否 s1 中的每一个元素都在 s2 中,运算符操作为 s1>=s2;//注意是s2调用,参数为s1.

8.集合的并集:

union s1.union(s2) :返回一个新集合,新集合包含s1,s2的所有元素,等价的运算符为 | 。

9.集合的交集:

intersection,s1.intersection(s2),返回s1和s2中相同部分

10.其他操作:

s1.difference(s2):包含s1中有,但是s2没有的元素的集合。s1symmetric_difference(s2):包含s1和s2中不相同的元素的集合。

原文地址:https://www.cnblogs.com/qingdeng123/p/11700249.html

时间: 2024-08-09 08:28:38

10个Python set 常用操作函数!的相关文章

python MySQLdb 常用操作

我采用的是MySQLdb操作的MYSQL数据库.先来一个简单的例子吧: import MySQLdb try:     conn=MySQLdb.connect(host='localhost',user='root',passwd='root',db='test',port=3306)     cur=conn.cursor()     cur.execute('select * from user')     cur.close()     conn.close() except MySQL

byte数据的常用操作函数[转发]

1 /// <summary> 2 /// 本类提供了对byte数据的常用操作函数 3 /// </summary> 4 public class ByteUtil 5 { 6 private static char[] HEX_CHARS = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; 7 private static byte[] BITS = {0x01, 0x02, 0x04, 0x0

javascript 数组的常用操作函数

join() Array.join(/* optional */ separator) 将数组转换为字符串,可带一个参数 separator (分隔符,默认为","). 与之相反的一个方法是:String.splict() ,将字符串分隔成若干块来创建一个新的数组. reverse() Array.reverse(),颠倒数组元素的顺序,返回逆向的数组.注意此方法会修改原来数组元素的位置,而不是返回一个新的数组. sort() sort() 方法将数组中的元素排序并返回排序后的数组.s

JavaScript字符串常用操作函数之学习笔记

字符串简介 使用英文单引号或双引号括起来,如:’Hello’,”World”,但是不能首尾的单引号和双引号必须一致,交错使用,如果要打印单引号或者双引号,可以使用转义字符\’(单引号),\”(双引号)  代码如下 复制代码 var str_1 = 'Hello World!';  //Hello World!var str_2 = "Hello World!";  //Hello World!var str_3 = '他说:"这样可以的."';  //他说:&quo

python中常用的函数与库一

1, collections.deque 在python里如果我们用列表作为队列使用也是可以的,只是当从队尾删除或者增加元素的时候是很快的,但是从队首删除或者增加元素则要慢得多,这是因为在队首进行操作其他的元素都要逐一改变. collections.deque就是为队列设计的,它能迅速得删除或者增加元素,无论是队首还是队尾 >>> from collections import deque >>> queue = deque(["Eric", &qu

Python 字典常用操作

Python字典常用的定义方法 直接定义一个字典dict1 = {'x': 1, 'y': 2, 'z': 3} 利用dict方法定义一个字典dict2 = dict(x=1, y=2, z=3) 利用dict方法定义一个字典dict3 = dict((('x', 1), ('y', 2), ('z', 3))) dict内建方法fromkeys创建并返回一个新字典dict4 = dict4.fromkeys('x', '1')也可以用循环的方式生成字典:dict4.fromkeys(range

Python列表常用操作

先看一些基本的操作 names = ["4ZhangYang", "#!Guyun","xXiangPeng",["alex","jack"],"ChenRonghua","XuLiangchen"] #打印第一个以及第三个元素 print(names[0],names[2]) 切片操作: print(names[1:3]) #打印下标为1到下标为2的元素内容,第3个

python anaconda 常用操作

在使用 python anaconda时,经常会用到很多常用操作,记录下来,方便以后更好地使用: conda: Conda既是一个包管理器又是一个环境管理器.你肯定知道包管理器,它可以帮你发现和查看包.但是如果当我们想要安装一个包,但是这个包只支持跟我们目前使用的python不同的版本时.你只需要几行命令,就可以搭建起一个可以运行另外python版本的环境.这就是conda环境管理器的强大功能. conda常用命令: conda update conda # 升级conda conda crea

python 列表常用操作(二)

1.tuple 的 unpack a,b = t 2.格式化输出 print('您的输入:{},值为{}',format(a,b)) 3.日期计算 import datetime as dt import time as tm print ("time={}",tm.time()) 4.pyhon 面向对象 5.map 函数 对应位置进行操作 6.map 和 lambda 表达式配合起来使用 l1=[1,3,5,7,9] l2=[0,2,4,6,8] result = map(lamb