本文给大家小结了一下Python中集合的基础知识,非常的简单易懂,有需要的小伙伴可以参考下。
集合
特点:集合对象是一组无序排列的可哈希的值:集合成员可以做字典的键,与列表和元组不同,集合无法通过数字进行索引。此外,集合中的元素不能重复。
定义
- set() -> new empty set object
- set(iterable) -> new set object
- s = {0}
应用:去重
- >>> lst1 = [1,1,2,2,3,4,2]
- >>> list(set(lst1))
- [1, 2, 3, 4]
常用操作
集合支持一系列标准操作,包括并集|、交集&、差集-和对称差集^
子集< <=及超集> >=
增删,清空操作
具体见如下代码例子
- >>> lst1 = [1,2]
- >>> lst2 = [2,3]
- >>> a = set(lst1) #定义集合
- >>> b = set(lst2)
- >>> a,b
- ({1, 2}, {2, 3})
- >>> a|b #取并集
- {1, 2, 3}
- >>> a&b #取交集
- {2}
- >>> a-b #取差集
- {1}
- >>> b-a #取差集
- {3}
- >>> list(a) #转换集合为列表,也可转为元组,如 tuple(a)返回 (1,2)
- [1, 2]
- >>> a < b #子集判断
- False
- >>> c = set([1])
- >>> c
- {1}
- >>> c < a #子集判断
- True
- >>> c <= a #子集判断
- True
- >>> d = set([1,2,3])
- >>> d > a #超集判断
- True
- >>>
- >>> d >= a #超集判断
- True
- >>> a,b
- ({1, 2}, {2, 3})
- >>> a^b # 对称差集
- {1, 3}
- >>> c
- {1}
- >>> d
- {1, 2, 3}
- >>> a^d # 对称差集
- {3}
- >>> s = {0}
- >>> type(s)
- <class 'set'>
- >>>
- >>> print(s, len(s)) #集合长度
- {0} 1
- >>> s.add('1') #添加元素
- >>> s
- {0, '1'}
- >>> s.update([2,3]) #添加多个元素
- >>> s
- {0, 2, 3, '1'}
- >>> s.remove(2) #删除指定元素,如没有则报错
- >>> s
- {0, 3, '1'}
- >>> s.pop() #随便删元素(貌似没什么用)
- 0
- >>> s
- {3, '1'}
- >>> s.discard(3) #删除指定元素
- >>> s
- {'1'}
- >>> s.clear() #清空集合
- >>> s
- set()
新闻热点
疑难解答