Python3列表、元组、字典、集合的方法
一、列表
温馨提示:对图片点右键——在新标签页中打开图片:

1、count()
定义:统计指定元素在列表中出现的次数并返回这个数。若指定的元素不存在则返回:0。
格式:[列表].count(“指定元素”)
例:统计指定元素的个数
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.count('dark_knight')
print(l1)
输出结果:
2
图示:

例2:统计这一个不存在的元素
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.count('x') # 指定一个不存在的元素
print(l1)
输出结果:
0
图示:

2、index()
定义:查找并返回指定元素的索引位置,若指定的元素不存在则会抛出异常,可以指定范围查找。
格式:[列表].index("指定元素",指定范围)
例1:查找指定元素的索引位置
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.index('dark_knight')
print(l1)
输出结果:
0
图示:

例2:指定范围查找指定元素的索引位置,范围查找顾首不顾尾
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.index('dark_knight',2,7) # 查找索引2到6的范围,顾首不顾尾
print(l1)
输出结果:
6
图示:

例3:查找一个列表中不存在的元素则会抛出异常
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.index('x') # 查找一个列表中不存在的元素
print(l1)
输出结果:
ValueError: 'x' is not in list
图示:

3、pop()
定义:移除列表中一个指定元素。括号中必须写被移除元素的索引位置,并返回这个被移除的元素,括号中不写则默认移除列表中最后一个元素
格式:[列表].pop(指定元素的索引位置)
例1:默认移除列表中的最后一个元素
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.pop() # 默认移除列表中的最后一个元素
print(l1) # 返回这个被移除的元素
print(l) # 查看原列表
输出结果:
dark_knight
['dark_knight', 'lisa', 'Miss_Jing', '老张', '糖宝', 'copila']
图示:

例2:移除指定的元素
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.pop(2) # 移除列表中索引位置为2的元素
print(l1) # 返回这个被移除的元素
print(l) # 查看原列表
输出结果:
Miss_Jing
['dark_knight', 'lisa', '老张', '糖宝', 'copila', 'dark_knight']
图示:

例3:删除一个超出列表元素索引的元素则会抛出异常
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.pop(10) # 移除列表中索引位置为10的元素,但列表中的元素没有索引位置为10的元素
print(l1) # 返回这个被移除的元素
print(l) # 查看原列表
输出结果:
IndexError: pop index out of range
图示:

4、remove()
定义:移除列表中一个指定的元素,返回值为None,括号中必须指定元素名,否则抛出异常。移除一个不存在列表中的元素也会抛出异常。
格式:[列表].remove(“指定的元素名”)
例1:移除指定元素
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.remove('dark_knight')
print(l1) # 返回值为None
print(l) # 打印原列表
输出结果:
None
['lisa', 'Miss_Jing', '老张', '糖宝', 'copila', 'dark_knight']
图示:

例2:移除一 个不存在列表的元素则会抛出异常。
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.remove('x')
print(l1)
print(l) # 查看原列表
输出结果:
ValueError: list.remove(x): x not in list
图示:

5、insert()
定义:将要插入的元素插入至列表中指定的索引位置处,返回值为None。
格式:[列表].insert(指定的索引位置,"要插入的元素")
例1:将要插入的元素插入至列表中指定的索引位置处
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.insert(5,'暗黑骑士') # 将字符串“暗黑骑士”插入至“coplia”前面
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
None
['dark_knight', 'lisa', 'Miss_Jing', '老张', '糖宝', '暗黑骑士', 'copila', 'dark_knight']
图示:

例2:将要插入的元素插入至列表中指定的索引位置处。
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.insert(20,'暗黑骑士') # 将字符串“暗黑骑士”插入索引位置为20的地方
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
None
['dark_knight', 'lisa', 'Miss_Jing', '老张', '糖宝', 'copila', 'dark_knight', '暗黑骑士']
图示:

6、append()
定义:在列表中的末尾处添加指定的元素,返回值为None。
格式:[列表].append(“指定元素”)
例:在列表的末尾处添加指定的元素
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.append('暗黑骑士')
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
None
['dark_knight', 'lisa', 'Miss_Jing', '老张', '糖宝', 'copila', 'dark_knight', '暗黑骑士']
图示:

7、clear()
定义:清空列表中所有的元素,返回值为None
格式:[列表].clear()
例:清空列表中所有的元素
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.clear()
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
None
[]
图示:

8、copy()
定义:拷贝列表,并返回一个浅拷贝后的新列表
格式:[列表].copy()
例:拷贝一个列表
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.copy()
print(l1) # 得到复制后的新列表
print(l) # 查看原列表
输出结果:
['dark_knight', 'lisa', 'Miss_Jing', '老张', '糖宝', 'copila', 'dark_knight']
['dark_knight', 'lisa', 'Miss_Jing', '老张', '糖宝', 'copila', 'dark_knight']
图示:

9、extend()
定义:扩展列表。在原列表中末尾处追加一个序列,该序列中的所有元素都会被添加至原列表末尾。返回值为None
格式:[列表].extend(一个序列)
例:扩展列表
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
t = (1,2,3,4,5)
l1 = l.extend(t)
print(l1) # 得到复制后的新列表
print(l) # 查看原列表
输出结果:
None
['dark_knight', 'lisa', 'Miss_Jing', '老张', '糖宝', 'copila', 'dark_knight', 1, 2, 3, 4, 5]
图示:

10、reverse()
定义:反向列表中的元素,返回值为None。
格式:[列表].reverse()
例:反向列表中的元素
l = ['dark_knight','lisa','Miss_Jing','老张','糖宝','copila','dark_knight']
l1 = l.reverse()
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
None
['dark_knight', 'copila', '糖宝', '老张', 'Miss_Jing', 'lisa', 'dark_knight']
图示:

11、sort()
定义:对列表进行排序,返回值为None。
有两个可选参数:key和reversekey。
key在使用时必须提供一个排序过程总调用的函数,默认key = None;
reverse实现升降序排序,需要提供布尔值,默认reverse = False
格式:[列表].sort(key = 过程总调用函数,reverse = 布尔值)
例1:将每个元素的首字母以“a-z”的顺序进行排序
l = ['dark_knight','lisa','Miss_Jing','copila','dark_knight']
l1 = l.sort() # 相当于:l1 = l.sort(key = None,reverse = False)
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
None
['Miss_Jing', 'copila', 'dark_knight', 'dark_knight', 'lisa']
图示:

例2:将每个元素以“0-9”的顺序进行排序.
l = [5,3,2,7,4,1,6]
l1 = l.sort() # 数字按0-9的升序排序。相当于l1 = l.sort(key = None,reverse = False)
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
None
[1, 2, 3, 4, 5, 6, 7]
例3:列表中若既有数字又有字符串则不能用sort方法进行排序,否则报错。
l = ['dark_knight','lisa','Miss_Jing','copila',8,7,6]
l1 = l.sort()
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
TypeError: '<' not supported between instances of 'int' and 'str'
图示:

例4:将每个字符串元素按长度从短到长的方式进行排序
l = ['hahahahaha','hahaha','hahahaha','ha']
l1 = l.sort(key = len) # 相当于l1 = l.sort(key = len,reverse = False)
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
None
['ha', 'hahaha', 'hahahaha', 'hahahahaha']
图示:

例5:将每个字符串元素按长度从长到短的方式进行排序
l = ['hahahahaha','hahaha','hahahaha','ha']
l1 = l.sort(key = len,reverse=True)
print(l1) # 返回值为None
print(l) # 查看原列表
输出结果:
None
['hahahahaha', 'hahahaha', 'hahaha', 'ha']
图示:

二、元组

1、count()
定义:统计指定元素在元组中出现的次数并返回这个数。若指定的元素不存在则返回:0。
格式:(元组).count(“指定的元素”)
例1:统计指定元素在元组中出现的次数
t = ('dark_knight','lisa','Miss_Jing','老张','糖宝','dark_knight')
t1 = t.count('dark_knight')
print(t1)
输出结果:
2
图示:

例2:统计一个不存在元组的中的元素
t = ('dark_knight','lisa','Miss_Jing','老张','糖宝','dark_knight')
t1 = t.count('x')
print(t1)
输出结果:
0
图示:

2、index()
定义:查找并返回指定元素的索引位置,若指定的元素不存在则会抛出异常,可以指定范围查找。
格式:(元组).index(“指定元素”,指定范围)
例1:当有多个相同的元素时,按从左到右的顺序,找到第一个元素的索引位置
t = ('dark_knight','lisa','Miss_Jing','老张','糖宝','dark_knight')
t1 = t.index('dark_knight')
# 当一个元组中有多个相同的元素时,按从左到右的顺序,找到第一个元素的索引位置
print(t1)
输出结果:
0
图示:

例2:按范围查找指定元素的索引位置
t = ('dark_knight','lisa','Miss_Jing','老张','糖宝','dark_knight')
t1 = t.index('dark_knight',2,6) # 按范围查找指定元素的索引位置
print(t1)
输出结果:
5
图示:

例3:查找一个元组中不存在的元素则会抛出异常
t = ('dark_knight','lisa','Miss_Jing','老张','糖宝','dark_knight')
t1 = t.index('x')
print(t1)
输出结果:
ValueError: tuple.index(x): x not in tuple
图示:

三、字典 
1、keys()
定义:返回字典里的所有的键
格式:{字典}.keys()
例:取出字典中所有的键
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.keys()
print(d1)
输出结果:
dict_keys(['dark_knight', 'lisa', 'copila', '糖宝', '老张', 'Miss_Jing'])
图示:

2、values()
定义:返回字典里的所有的值
格式:{字典}.values()
例:返回字典里的所有的值
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.values()
print(d1)
输出结果:
dict_values([28, 28, 50, 21, 21, 24])
图示:

3、copy()
定义:拷贝字典,并返回一个浅拷贝后的新字典。
格式:{字典}.copy()
例:拷贝字典
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.copy()
print(d1)
输出结果:
{'dark_knight': 28, 'lisa': 28, 'copila': 50, '糖宝': 21, '老张': 21, 'Miss_Jing': 24}
图示:

4、clear()
定义:清空字典中所有的元素,返回值为None
格式:{字典}.clear()
例:清空字典中所有的元素
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.clear()
print(d1) # 返回值
print(d)
输出结果:
None
{}
图示:

5、pop()
定义:删除指定键值。返回被删除指定键值的值。
格式:{字典}.pop(指定的键)
例:指定删除一对键值。
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.pop('copila')
print(d1) # 返回值
print(d)
输出结果:
50
{'dark_knight': 28, 'lisa': 28, '糖宝': 21, '老张': 21, 'Miss_Jing': 24}
图示:

6、get()
定义:返回指定键的值。若指定的键不存在则返回None
格式:{字典}.get(指定的键)
例1:返回指定键的值
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.get('copila')
print(d1)
输出结果:
50
图示:

例2:指定的键不在字典中
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.get('x')
print(d1)
输出结果:
None
图示:

7、items()
定义:返回可遍历的(键、值)元组数组
格式:{字典}.items()
例:返回可遍历的(键、值)元组数组
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.items()
print(d1)
输出结果:
dict_items([('dark_knight', 28), ('lisa', 28), ('copila', 50), ('糖宝', 21), ('老张', 21), ('Miss_Jing', 24)])
图示:

8、update()
定义:扩展字典,返回值为None
格式:{字典1}.update({字典2})
例:扩展字典
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = {'x':1,'y':2}
d2 = d.update(d1)
print(d2) # 返回值为None
print(d) # 查看原字典
输出结果:
None
{'dark_knight': 28, 'lisa': 28, 'copila': 50, '糖宝': 21, '老张': 21, 'Miss_Jing': 24, 'x': 1, 'y': 2}
图示:

9、popitem()
定义:随机删除字典中的一对键和值,并返回被删除的键和值。(一般删除字典末尾的键和值)
格式:{字典}.popitem()
例:随机删除字典中的一对键和值。
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.popitem()
print(d1) # 返回被随机删除的键和值
print(d) # 查看原字典
输出结果:
('Miss_Jing', 24) # 这个结果是随机删除,有变化的
{'dark_knight': 28, 'lisa': 28, 'copila': 50, '糖宝': 21, '老张': 21}
图示:

10、fromkeys()
定义:创建并返回一个新字典,有两个参数:seq和value。
seq是必选参数,表示要传入的序列。
value是可选参数,表示要传入新字典中的值。(若不指定值则生成的新字典所有的值都为None)
格式:{字典}.fromkeys(要传入的序列,指定新字典的值)
例:创建一个新字典
d = {} # 有值也会被覆盖
l1 = ['copila', '糖宝', '老张']
d1 = d.fromkeys(l1,'SB')
print(d1)
# 返回一个新的字典,其中列表“l”的所有元素作为新字典键,值为None
输出结果:
{'copila': 'SB', '糖宝': 'SB', '老张': 'SB'}
图示:

11、setdefault()
定义:与get()方法类似。当指定的键存在时则返回它对应的的值;当指定的键不存在时于字典中时,返回值为None,则将这个键加入到字典里,对应一个空值。
格式:{字典}.setdefault(指定的键)
例1:当指定的键存在字典中时返回这个键的值
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.setdefault('copila')
print(d1) # 返回值
输出结果:
50
图示:

例2:当指定的键不存在字典中时则将这个键添加到字典中,并对应一个空值。
d = {'dark_knight':28,'lisa':28,'copila':50,'糖宝':21,'老张':21,'Miss_Jing':24}
d1 = d.setdefault('x')
print(d1) # 返回值
print(d) # 查看原字典
输出结果:
None
{'dark_knight': 28, 'lisa': 28, 'copila': 50, '糖宝': 21, '老张': 21, 'Miss_Jing': 24, 'x': None}
图示:

例3:若指定的键存在则不会修改值
d = {'x':1,'y':2,'z':3}
d.setdefault('x',3333333333)
print(d)
输出结果:
{'x': 1, 'y': 2, 'z': 3}
图示:

例4:若指定的键不存在则会添加键和值
d = {'x':1,'y':2,'z':3}
d.setdefault('haha',3333333333)
print(d)
输出结果:
{'x': 1, 'y': 2, 'z': 3, 'haha': 3333333333}
图示:

四、集合

1、update()
定义:扩展集合。返回值为None
格式:{集合}.update({被扩展的集合})
例:扩展集合g1,两个集合中相同的元素将被合并
g1 = {'dark_knight','lisa','老张','Miss_Jing'}
g2 = {'糖宝','老张','dark_knight','william','谢公子'}
g = g1.update(g2) # 扩展集合g1,
print(g) # 返回值
print(g1) # 原集合
输出结果:
None
{'Miss_Jing', '谢公子', 'william', 'dark_knight', '糖宝', '老张', 'lisa'}
图示1:

图示2:

2、copy()
定义:拷贝集合,并返回一个新的集合。
格式:{集合}.copy()
例1:拷贝集合
g = {'dark_knight','lisa','老张','Miss_Jing'}
g1 = g.copy()
print(g1) # 返回值,得到拷贝后的新集合
print(g) # 原集合
输出结果:
{'老张', 'lisa', 'dark_knight', 'Miss_Jing'}
{'老张', 'lisa', 'dark_knight', 'Miss_Jing'}
图示:

3、pop()
定义:随机删除集合中的一个元素,并返回这个被删除的元素。
格式:{集合}.pop()
例:随机删除集合中的一个元素。
g = {'dark_knight','lisa','老张','Miss_Jing'}
g1 = g.pop()
print(g1) # 返回值
print(g) # 原集合
输出结果:
老张
{'dark_knight', 'lisa', 'Miss_Jing'}
图示:

4、clear()
定义:清空集合,返回值为None。
格式:{集合}.clear()
例:清空集合
g = {'dark_knight','lisa','老张','Miss_Jing'}
g1 = g.clear()
print(g1) # 返回值
print(g) # 原集合
输出结果:
None
set()
图示:


5、remove()
定义:移除指定的元素,返回值为None。被移除的元素若不存在则会抛出异常。
格式:{集合}.remove(指定的元素)
例1:移除指定的元素
g = {'dark_knight','lisa','老张','Miss_Jing'}
g1 = g.remove('Miss_Jing')
print(g1) # 返回值
print(g) # 原集合
输出结果:
None
{'老张', 'lisa', 'dark_knight'}
图示:

6、add()
定义:给集合添加一个元素,返回值为None。
格式:{集合}.add(元素)
例:给集合添加一个元素
g = {'dark_knight','lisa','老张','Miss_Jing'}
g1 = g.add('copila')
print(g1) # 返回值
print(g) # 原集合
输出结果:
None
{'lisa', '老张', 'Miss_Jing', 'dark_knight', 'copila'}
图示:

7、difference()
定义:差集运算,原集合不更新。第一个集合与第二个集合进行差集运算后,那么第一个集合中剩下的元素就是返回值。
格式:{集合1}.difference({集合2})
简写:{集合1} - {集合2}
例:集合1对集合2进行差集运算时,返回值则为集合1中与集合2不相同的元素。
g1 = {'dark_knight','lisa','老张','Miss_Jing'}
g2 = {'糖宝','老张','dark_knight','william','谢公子'}
g = g1.difference(g2)
# g = g1 - g2 # 简写
print(g) # 返回值
print(g1) # 原集合
输出结果:
{'lisa', 'Miss_Jing'}
{'lisa', 'Miss_Jing', '老张', 'dark_knight'}
图示1:

差集图示:

8、difference_update()
定义:差集运算,原集合会更新,返回值为None。
格式: {集合1}.difference_update({集合2})
例:差集运算,原集合会更新
g1 = {'dark_knight','lisa','老张','Miss_Jing'}
g2 = {'糖宝','老张','dark_knight','william','谢公子'}
g = g1.difference_update(g2)
print(g) # 返回值
print(g1) # 原集合
输出结果:
None
{'lisa', 'Miss_Jing'
图示:

9、discard()
定义:删除集合中指定的元素,返回值为None。若删除一个集合中的不存在的元素也不会抛出异常
格式:{集合}.discard(指定元素)
例1:删除一个指定的元素。
g = {'dark_knight','lisa','老张','Miss_Jing'}
g1 = g.discard('lisa')
print(g1) # 返回值
print(g) # 原集合
输出结果:
None
{'老张', 'dark_knight', 'Miss_Jing'}
图示:

例2:删除一个集合中不存在的元素
g = {'dark_knight','lisa','老张','Miss_Jing'}
g1 = g.discard('x') # 删除一个集合中不存在的元素
print(g1) # 返回值
print(g) # 原集合
输出结果:
None
{'lisa', 'dark_knight', 'Miss_Jing', '老张'}
图示:

10、intersection()
定义:交集运算,原集合不更新。第一个集合与第二个集合进行交集运算后,那么两个集合中相同的元素就是返回值
格式:{集合1}.intersection({集合2})
简写:{集合1}&{集合2}
例:交集运算
g1 = {'dark_knight','lisa','老张','Miss_Jing'}
g2 = {'糖宝','老张','dark_knight','william','谢公子'}
g = g1.intersection(g2)
# g = g1 & g2
print(g) # 返回值
print(g1) # 原集合
输出结果:
{'老张', 'dark_knight'}
{'老张', 'dark_knight', 'Miss_Jing', 'lisa'}
图示:

交集图示:

11、intersection_update()
定义:交集运算,原集合会更新,返回值为None。
格式: {集合1}.intersection_update({集合2})
例:交集运算,原集合会更新
g1 = {'dark_knight','lisa','老张','Miss_Jing'}
g2 = {'糖宝','老张','dark_knight','william','谢公子'}
g = g1.intersection_update(g2)
print(g) # 返回值
print(g1) # 原集合
输出结果:
None
{'dark_knight', '老张'}
图示:

12、isdisjoint()
定义:判断是否有交集,并返回一个布尔值。有交集则返回False,没有交集则返回True。
格式:{集合1}.isdisjoint({集合2})
例1:两个集合有交集时返回False
g1 = {'dark_knight','lisa','老张','Miss_Jing'}
g2 = {'糖宝','老张','dark_knight','william','谢公子'}
g = g1.isdisjoint(g2)
print(g) # 返回值
输出结果:
False
图示:

例2:两个集合之间没有交集时返回True
g1 = {'dark_knight','lisa','老张','Miss_Jing'}
g2 = {'xxx','yyy','zzz'}
g = g1.isdisjoint(g2)
print(g) # 返回值
输出结果:
True
图示:

13、issubset()
定义:判断一个集合是否为另一个集合的子集,返回布尔值。如果是则返回True,否则返回False,若两个集合相等时,则返回True。表示这两个集合互为子集。
格式:{集合1}.issubset({集合2})
例1:判断是否为子集
g1 = {'dark_knight','pudding'}
g2 = {'dark_knight','lisa','knight','pudding'}
g = g1.issubset(g2) # g1是g2的子集,所以返回True
print(g)
输出结果:
True
图示:

例2:相同的集合互为子集,也返回True。
g1 = {'dark_knight','lisa','knight','pudding'}
g2 = {'dark_knight','lisa','knight','pudding'}
g = g1.issubset(g2) # g1和g2互为子集,所以返回True
print(g)
输出结果:
True
图示:

例3: 若不是子集则返回False。
g1 = {'xxxx','yyyyy'}
g2 = {'dark_knight','lisa','knight','pudding'}
g = g1.issubset(g2) # g1不是g2的子集,所以返回False
print(g)
输出结果:
False
图示:

14、issuperset()
定义:判断一个集合是否为另一个集合的超集(父集),返回一个布尔值。如果是返回True,否则返回False
格式:{集合1}.issuperset({集合2})
例1:判断是否为父集
g1 = {'dark_knight','pudding'}
g2 = {'dark_knight','lisa','knight','pudding'}
g = g1.issuperset(g2) # g1不是g2的父集,所以返回True
print(g)
输出结果:
False
图示:

例2:判断是否为父集
g1 = {'dark_knight','lisa','knight','pudding'}
g2 = {'dark_knight','pudding'}
g = g1.issuperset(g2) # g1是g2的父集,所以返回True
print(g)
输出结果:
True
图示:

15、symmetric_difference()
定义:对称差集运算,原集合不更新。第一个集合与第二个集合进行对称差集运算后,那么两个集合中不同的元素就是返回值。
格式:{集合1}.symmetric_difference({集合2})
简写:{集合1}^{集合2}
例:对称差集运算
g1 = {'dark_knight','pudding','Miss_Jing'}
g2 = {'dark_knight','lisa','knight','pudding','糖宝','老张'}
g = g1.symmetric_difference(g2)
print(g) # 返回值,得到两个集合中的不相同元的素
print(g1) # 原集合不改变
输出结果:
{'knight', 'Miss_Jing', 'lisa', '老张', '糖宝'}
{'pudding', 'dark_knight', 'Miss_Jing'}
图示:

对称差集图示:

16、symmetric_difference_update()
定义:对称差集运算,原集合更新。返回值为None。
格式:{集合1}.sysmmetric_difference_update({集合2})
例:对称差集运算,原集合会更新。
g1 = {'dark_knight','pudding','Miss_Jing'}
g2 = {'dark_knight','lisa','knight','pudding','糖宝','老张'}
g = g1.symmetric_difference_update(g2)
print(g) # 返回值
print(g1) # 原集合
输出结果:
None
{'糖宝', 'knight', '老张', 'lisa', 'Miss_Jing'}
图示:

17、union()
定义:并集运算,原集合不更新,。第一个集合与第二个集合进行并集运算后,两个集合中的相同元素会被合并,然后把这两个元素中所有的元素组成一个新的集合就是它的返回值
格式:{集合1}.union({集合2})
简写:{集合1}|{集合2}
例:并集运算,原集合不更新
g1 = {'dark_knight','pudding','Miss_Jing'}
g2 = {'dark_knight','lisa','knight','pudding','糖宝','老张'}
g = g1.union(g2)
print(g) # 返回值
print(g1) # 原集合不会被改变
输出结果:
{'dark_knight', 'pudding', 'lisa', '糖宝', 'knight', '老张', 'Miss_Jing'}
{'dark_knight', 'pudding', 'Miss_Jing'}
图示:

并集运算图示:

Python3列表、元组、字典、集合的方法的更多相关文章
- python3笔记十八:python列表元组字典集合文件操作
一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle #数据持久性模块 #封装的方法def OptionData(data,path): # ...
- python中列表 元组 字典 集合的区别
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...
- **python中列表 元组 字典 集合
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...
- python_列表——元组——字典——集合
列表——元组——字典——集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...
- Day 07 数据类型的内置方法[列表,元组,字典,集合]
数据类型的内置方法 一:列表类型[list] 1.用途:多个爱好,多个名字,多个装备等等 2.定义:[]内以逗号分隔多个元素,可以是任意类型的值 3.存在一个值/多个值:多个值 4.有序or无序:有序 ...
- python的学习笔记01_4基础数据类型列表 元组 字典 集合 其他其他(for,enumerate,range)
列表 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问 ...
- python 中列表 元组 字典 集合的区别
先看图片解释 (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复 ...
- Python 列表&元组&字典&集合
列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片.合并.删除等操作 可通过索引来向指定位置插入元素 可通过po ...
- python的列表元组字典集合比较
定义 方法 列表 可以包含不同类型的对象,可以增减元素,可以跟其他的列表结合或者把一个列表拆分,用[]来定义的 eg:aList=[123,'abc',4.56,['inner','list'],7- ...
- Python列表,元组,字典,集合详细操作
菜鸟学Python第五天 数据类型常用操作及内置方法 列表(list) ======================================基本使用====================== ...
随机推荐
- TOYS(poj 2318)
题意:就是给了m个点,落在n+1个区域中,问各个区域有多少个点. /* 对于每个玩具,二分其所在的区间,然后用叉积判断. 但是我觉得枚举好像时间复杂度也可以. */ #include<cstdi ...
- PHP 常见问题2
11.能够使 HTML 和 PHP 分离开使用的模板(1 分) 答: Smarty,Dwoo,TinyButStrong,Template Lite,Savant,phemplate,XTemplat ...
- Object_c tabbar菜单栏在切换的时候,颜色变灰的问题
在界面切换的时候,有时候tabbar整条颜色都会变灰,如下: 而正常的应该如下: 在所有的父类加上: self.navigationController.navigationBar.transluce ...
- django学习之- Models笔记
1:创建数据库表 #单表# app01_user 生成的表明为 tb1class User(models.Model): name = models.CharField(max_length=32,d ...
- MongoDB学习day08--mongoose预定义修饰符和getter、setter修饰符
一.mongoose预定义修饰符 lowercase. uppercase . trim var UserSchema=mongoose.Schema({ name:{ type:String, tr ...
- Atom列编辑快捷键
安装这个:sublime-style-column-selection,在Ubuntu下使用[Shitf]+鼠标左键选择.
- mybatis批量更新两种方式:1.修改值全部一样 2.修改每条记录值不一样
Mybatis批量更新数据 mybatis批量更新两种方式:1.修改值全部一样 2.修改每条记录值不一样 mybatis批量更新两种方式:1.修改值全部一样 2.修改每条记录值不一样 mybatis批 ...
- asp.net core 集成JWT(一)
[什么是JWT] JSON Web Token(JWT)是目前最流行的跨域身份验证解决方案. JWT的官网地址:https://jwt.io/ 通俗地来讲,JWT是能代表用户身份的令牌,可以使用JWT ...
- 百亿级企业级 RPC 框架开源了!
今天给大家介绍给一款性能卓越的 RPC 开源框架,其作者就是我推荐每个 Java 程序员都应该看的<Java 生态核心知识点整理>的原作者张玉龙. 说实话我第一次看到这个资料的时候,就感觉 ...
- Linux信号通讯编程
信号通讯流程为: ①进程A/内核选择信号 ②发送信号 ③进程B接收信号并处理 Linux系统支持的全部信号均定义在/usr/include/asm/signal.h.当中常见的信号有: ①SIGKIL ...