Python集合(set)
Python中的集合同数学中的集合概念类似,也是用于保存不重复的元素。他有可变集合(set),和不可变集合(frozenset);可变集合(set)是无序的可变的。
创建集合
直接使用{}创建
setname = {"elment1", "element2", "element3"}
setname:集合名称
element:表示集合中的元素,个数没有限制,只要是Python支持的数据类型就可以
示例代码:
set1 = {"zhang", "li", "wang"}
set2 = {1, 2, 3}
set3 = {"张三", 18, 18, ("hello", "world")}
print(set1)
print(set2)
print(set3)
执行结果:
{'li', 'zhang', 'wang'}
{1, 2, 3}
{18, '张三', ('hello', 'world')}
注意:set中重复的元素Python只会保留一个(如我们上面创建的set3)
使用set()函数创建:
setname = set(iteration)
setname:表示集合的名字
iteration:表示要转换为集合的可迭代对象,可以是列表、元组、range对象等,也可以是字符串。如果是字符串,返回的集合将是包含全部不重复的集合。
示例代码:
set1 = set("zhang,wang")
set2 = set([1, 2, 3])
set3 = set(('hello', 'world'))
print(set1)
print(set2)
print(set3)
执行结果:
{'a', 'n', 'z', 'h', ',', 'w', 'g'}
{1, 2, 3}
{'hello', 'world'}
集合的添加和删除
setname.add(elment)
示例代码:
set1 = set(['hello', 'world'])
set1.add('你好世界')
print(set1)
执行结果:
{'hello', 'world', '你好世界'}
从集合中删除元素
集合中也可以使用
del命令删除整个集合,也可以使用pop()方法或者remove()方法删除一个元素,或者使用集合对象的```clear()方法清空集合,即删除集合中的全部元素,使其变为空集合。
示例代码:
try:
set1 = set(['hello', 'world', 1, 2, 3])
set1.remove(1)
print(set1)
set1.pop() # 删除一个元素默认第一个
print(set1)
set1.clear()
print(set1)
except KeyError:
print('未找到对应的key')
执行结果:
{2, 3, 'world', 'hello'}
{3, 'world', 'hello'}
set()
集合的交集、并集和差集运算
示例代码:
python = set(['张三', '李四', '王二'])
c = set(['小明', '张三'])
print('学Python的同学有:', python)
print('学c的同学有:', c)
print('交集运算:', python & c) # 既学Python又学c的同学
print('并集运算:', python | c) # 输出全部同学名字
print('差集运算:', python - c) # 输出只选了Python没选c的同学
执行结果:
学Python的同学有: {'李四', '王二', '张三'}
学c的同学有: {'张三', '小明'}
交集运算: {'张三'}
并集运算: {'张三', '李四', '王二', '小明'}
差集运算: {'李四', '王二'}
Python集合(set)的更多相关文章
- Python 集合set添加删除、交集、并集、集合操作符号
在Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 1. ...
- [转]python集合set
Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 来源网 ...
- python集合使用范例的代码
在代码过程中中,将代码过程中比较好的代码段珍藏起来,如下的代码是关于python集合使用范例的代码,希望能对大伙有用. # sets are unordered collections of uniq ...
- python集合与字典的用法
python集合与字典的用法 集合: 1.增加 add 2.删除 •del 删除集合 •discard(常用)删除集合中的元素 #删除一个不存在的元素不会报错 •remove 删除一个不存在的 ...
- Python 集合内置函数大全(非常全!)
Python集合内置函数操作大全 集合(s).方法名 等价符号 方法说明 s.issubset(t) s <= t 子集测试(允许不严格意义上的子集):s 中所有的元素都是 t 的成员 s ...
- Python 集合set()添加删除、交集、并集、集合操作详解
集合:一个集合中,任何两个元素都认为是不相同的,即每个元素只能出现一次.每个元素的地位都是相同的,元素之间是无序的. 创建集合set python set类是在python的sets模块中,大家现在使 ...
- python集合可以进行相减
python集合可以进行相减 student = {'tom','jim','mary','tom','jack','rose'} print(student) print('rose' in stu ...
- Python集合类型的操作与应用
Python集合类型的操作与应用 一.Python集合类型 Python中的集合类型是一个包含0个或多个数据项的无序的.不重复的数据组合,其中,元素类型只能是固定数据类型,如整数.浮点数.字符串.元组 ...
- Python - 集合 - 第十一天
Python 集合 集合(set)是一个无序的不重复元素序列. 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建 ...
- python集合set,交集,并集,差集,对称差集,子集和超集
python集合set,交集,并集,差集,对称差集,子集和超集 x = {1, 2, 3, 4} y = {2, 4, 5, 6} # 交集(取x中与y中相同部分) print(x.intersect ...
随机推荐
- mysql 查询优化 ~ 多表查询改写思路
一 简介:在之前我们从基础可知,现在咱们聊一下改写的几种思路二 分类: 1 left join 2 inner join 3 right join三 具体改写思路:思路1 本身不包含子查询,将多 ...
- ASP.NET MVC - WEB API
ASP.NET WEB API 与WEB API有关的类型 HttpMessageHandler(System.Net.Http)(消息处理器) 表示Http请求的处理程序,处理程序类似于Http管道 ...
- 【Convex Optimization (by Boyd) 学习笔记】Chapter 2 - Convex sets(1) 仿射集&凸集
I. 仿射凸集(Affine and convex sets) 1. 线与线段 假设\(R^n\)空间内两点\(x_1,x_2\, (x_1≠x_2)\),那么\(y=\theta x_1+(1-\t ...
- C++中的static关键字总结
C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static.前者应用于普通变量和函数,不涉及类:后者主要说明static在类中的作用. 1.面向过程设计中的st ...
- k64 datasheet学习笔记3---Chip Configuration之Human machine interfaces
1.前言 本文主要概略讲述GPIO相关的内容 2.GPIO configuration 注: GPIO模块没有访问保护,因为他没有连接到peripheral bridge slot上,不受MPU保护 ...
- k64 datasheet学习笔记3---Chip Configuration之Analog
1.前言 本文主要讲述K64芯片配置,关于模拟部分的内容,主要包括:ADC, CMP, DAC, VREF 2.16bit SAR ADC 从上图可以看出ADC主要挂在外设总线0上,由于ADC的输入引 ...
- NAND Flash底层原理,SLC MLC TLC比较【转】
转自:https://blog.csdn.net/qq_39560607/article/details/81714145 版权声明:请注明转载自Christa_RJ https://blog.csd ...
- WYSIWYG WebBuilder 所见即所得工具
WYSIWYG WebBuilder 所见即所得工具: http://www.wysiwygwebbuilder.com/
- vue之router学习笔记
1.动态路由匹配 我们经常需要将具有给定模式的路线映射到同一个组件.例如,我们可能有一个User应该为所有用户呈现但具有不同用户ID的组件.在vue-router我们可以在路径中使用动态段以实现: c ...
- 题解-USACO18DEC Sort It Out
Problem 洛谷5156 题意概要:给定一个长为\(n\)的排列,可以选择一个集合\(S\)使这个集合内部元素排到自己在整个序列中应该在的位置(即对于集合\(S\)内的每一个元素\(i\),使其排 ...