5. 基本数据结构-集合
程序员文章站
2022-03-07 10:36:18
一、集合定义 集合(set)是一个无序的不重复元素序列。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { } ,因为 { } 是用来创建一个空字典。 二、集合操作 1. 创建空集合 2. 集合操作 ......
一、集合定义
集合(set)是一个无序的不重复元素序列。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
二、集合操作
1. 创建空集合
1. set_test = {1,2,3,4,5} 2. set()
2. 集合操作
basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'} print(basket) >>>{'orange', 'banana', 'pear', 'apple'} a = set('abracadabra') print(a) >>>{'b', 'a', 'd', 'r', 'c'} b = set('alacazam') >>>{'m', 'z', 'a', 'l', 'c'} 1. 集合a中包含而集合b中不包含的元素 a-b >>>{'r', 'd', 'b'} 2. 集合a或b中包含的所有元素 a | b >>>{'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'} 3. 集合a和b中都包含了的元素 a & b >>>{'a', 'c'} 4. 不同时包含于a和b的元素 a ^ b >>>{'r', 'd', 'b', 'm', 'z', 'l'}
1. difference() - 差集 x = {"apple", "banana", "cherry"} y = {"google", "microsoft", "apple"} z = x.difference(y) >>>{'cherry', 'banana'} 2. intersection() - 交集 x = {"apple", "banana", "cherry"} y = {"google", "runoob", "apple"} z = x.intersection(y) >>>{'apple'} x = {"a", "b", "c"} y = {"c", "d", "e"} z = {"f", "g", "c"} result = x.intersection(y, z) >>>{"c"} 3. union() - 并集 x = {"apple", "banana", "cherry"} y = {"google", "runoob", "apple"} z = x.union(y) >>>{'cherry', 'runoob', 'google', 'banana', 'apple'}
1. 添加元素 add/update >>>thisset = set(("google", "runoob", "taobao")) >>> thisset.add("facebook") >>> print(thisset) {'taobao', 'facebook', 'google', 'runoob'} >>>thisset = set(("google", "runoob", "taobao")) >>> thisset.update({1,3}) >>> print(thisset) {1, 3, 'google', 'taobao', 'runoob'} >>> thisset.update([1,4],[5,6]) >>> print(thisset) {1, 3, 4, 5, 6, 'google', 'taobao', 'runoob'} 2. 移除元素 >>>thisset = set(("google", "runoob", "taobao")) >>> thisset.remove("taobao") >>> print(thisset) {'google', 'runoob'} >>> thisset.remove("facebook") # 不存在会发生错误 traceback (most recent call last): file "<stdin>", line 1, in <module> keyerror: 'facebook' >>>thisset = set(("google", "runoob", "taobao", "facebook")) >>> thisset.pop() 'facebook'
上一篇: JS 的 Element元素对象