python数据类型之集合
2018-01-11 11:35
309 查看
集和(set)——字典的近亲
实现列表去重:
方法1:
li = [1, 2, 3, 4, 3, 2]
s = set(li)
l = list(s)
print set(l)
方法2:
li = [1, 2, 3, 4, 3, 2]
d = {}.fromkeys(li)
print d.keys()
*集和是无序的,不重复的数据类型,不支持索引,切片,重复,和连接,但支持成员操作符(in,not in),支持for循环,是可迭代的
**两个功能:去重
实现关系测试(交集,并集,差集,是否子/父集,是否没有交集)
1. 集和的定义:
s = {}
print type(s)
##花括号里面为空,则默认为字典类型
方法1(直接定义法):
s = {1,2,3,2,5}
print type(s)
方法2(工厂函数法):
s = set()
print type(s)
s = set([1,2,3,2,5])
print s
2. 集合的增删改查:
1)增:
s = {1, 2, 3, 4, 3, 2}
print s
s.add(5)
print s
s1 = {"a", "b", "c"}
s.update(s1) ##s+s1
print s
2)删:
s = {1, 2, 3, 4, 3, 2}
s.pop() ##随机删除一个元素
s.remove("2") ##删除一个元素,该元素必须存在于集合中,否则报错
s.discard("3") ##删除一个元素,该元素必须存在于集合中,否则不做任何操作
s.clear() ##清空集和
3)查(求集和关系):
s1 = {1,2,3,5}
s2 = {2,4,6,7}
print s1 & s2
print s1.intersection(s2)
##求交集
print s1.intersection_update(s2)
##求交集,并赋给S1
print s1 | s2
print s1.union(s2)
##求并集
print s1 - s2
print s1.difference(s2)
##求差集
print s1 ^ s2
print s1.symmetric_difference
##求对等差分(并集-交集)
print s1.issubset(s2)
##判断子集
print s1.issuperset(s2)
##判断父集
print s1.isdisjoint(s2)
##判断是否没有交集
相关文章推荐
- python常用数据类型操作-集合
- CrazyWing:Python自动化运维开发实战 十二、Python数据类型之集合
- 7、python数据类型之集合set
- 8-Python3从入门到实战—基础之数据类型(集合-Sets)
- Python 数据类型:集合
- 【python】特色数据类型——元组(列表、元组、字典、集合)(6)
- python入门-基本数据类型和集合
- python set type 集合类型的数据介绍 (set frozenset)
- python 学习笔记(3)数据类型2 (元组(tuple),集合,字典)
- python实操(5):python数据类型及常用操作,数字、字符串、元组、列表、字典、集合
- python基本数据类型(四)-集合与运算符-python3笔记
- Python数据类型之“集合(Sets)与映射(Mapping)”
- python3 第十五章 - 数据类型之Sets(集合)
- Python核心数据类型——集合(Set)
- Python基本数据类型__集合
- Python小白学习之路(八)—【变量】【基本数据类型分类】【集合】【集合的功能】
- python 数据类型之集合
- python3 数据类型集合
- python组合数据类型--集合
- [Python]集合数据类型笔记