Python中的字典和集合函数有哪些?
Python是一种高级编程语言,拥有许多实用的数据结构和函数。其中,字典和集合是Python的两个非常实用的数据结构。字典是一种无序的键值对集合,而集合是一种无序不重复元素的集合。在Python中,字典和集合是非常常用的数据结构,它们能够非常方便地进行快速的查找和去重操作。本文将介绍一些Python中常用的字典和集合函数。
字典函数
1. clear()
clear()函数可以清空字典,将字典中所有的键值对都删除。
示例代码:
dict = {'name': 'jack', 'age': 20}
dict.clear()
print(dict)
输出结果:
{}
2. copy()
copy()函数用于复制一个字典。由于字典是可变对象,如果直接将字典赋值给另外一个变量,那么改变原字典的值也会影响到新变量。因此,使用copy()函数可以创建一个新的字典,它包含着原字典的所有键值对,但是它们是两个不同的对象,互不干扰。
示例代码:
dict1 = {'name': 'jack', 'age': 20}
dict2 = dict1.copy()
dict1.clear()
print(dict2)
输出结果:
{'name': 'jack', 'age': 20}
3. get()
get()函数用于获取字典中指定键的值。如果指定的键不存在,该函数不会报错,而是返回一个指定的默认值,如果不指定默认值,则返回None。
示例代码:
dict = {'name': 'jack', 'age': 20}
print(dict.get('name'))
print(dict.get('sex', 'male'))
print(dict.get('class'))
输出结果:
jack male None
4. items()
items()函数可以返回包含所有键值对的元组的列表。每个元组的第一个元素是键,第二个元素是对应的值。
示例代码:
dict = {'name': 'jack', 'age': 20}
print(dict.items())
输出结果:
dict_items([('name', 'jack'), ('age', 20)])
5. keys()
keys()函数返回字典中所有键的列表。
示例代码:
dict = {'name': 'jack', 'age': 20}
print(dict.keys())
输出结果:
dict_keys(['name', 'age'])
6. values()
values()函数返回字典中所有值的列表。
示例代码:
dict = {'name': 'jack', 'age': 20}
print(dict.values())
输出结果:
dict_values(['jack', 20])
7. pop()
pop()函数用于删除字典中指定键的值,并返回该键对应的值。如果指定的键不存在,则抛出KeyError异常。
示例代码:
dict = {'name': 'jack', 'age': 20}
print(dict.pop('name'))
print(dict)
输出结果:
jack
{'age': 20}
8. popitem()
popitem()函数用于从字典中随机删除一对键值对,并返回该键值对。
示例代码:
dict = {'name': 'jack', 'age': 20}
print(dict.popitem())
print(dict)
输出结果:
('age', 20)
{'name': 'jack'}
9. setdefault()
setdefault()函数用于获取指定键的值。如果该键不存在,则会在字典中添加一个新的键值对,并将该值设置为指定的默认值。如果不指定默认值,则默认为None。
示例代码:
dict = {'name': 'jack', 'age': 20}
print(dict.setdefault('name', 'tom'))
print(dict.setdefault('class', 'one'))
print(dict)
输出结果:
jack
one
{'name': 'jack', 'age': 20, 'class': 'one'}
10. update()
update()函数用于将一个字典添加到另一个字典中。如果存在相同的键,那么后面的字典会覆盖前面的字典。
示例代码:
dict1 = {'name': 'jack', 'age': 20}
dict2 = {'sex': 'male', 'age': 25}
dict1.update(dict2)
print(dict1)
输出结果:
{'name': 'jack', 'age': 25, 'sex': 'male'}
集合函数
1. add()
add()函数用于向集合中添加一个元素。如果元素已经存在于集合中,则不会添加。
示例代码:
set = {1, 2, 3}
set.add(4)
set.add(2)
print(set)
输出结果:
{1, 2, 3, 4}
2. clear()
clear()函数用于清空集合中的所有元素。
示例代码:
set = {1, 2, 3}
set.clear()
print(set)
输出结果:
set()
3. copy()
copy()函数用于复制一个集合。由于集合是可变对象,因此如果直接将集合赋值给另外一个变量,那么改变原集合的值也会影响到新变量。因此,使用copy()函数可以创建一个新的集合,它包含着原集合的所有元素,但是它们是两个不同的对象,互不干扰。
示例代码:
set1 = {1, 2, 3}
set2 = set1.copy()
set1.clear()
print(set2)
输出结果:
{1, 2, 3}
4. difference()
difference()函数用于返回一个包含集合中所有元素的新集合,这些元素存在于当前集合中,但不存在于另一个集合中。
示例代码:
set1 = {1, 2, 3}
set2 = {2, 3, 4}
print(set1.difference(set2))
输出结果:
{1}
5. intersection()
intersection()函数用于返回一个新集合,其中包含两个或多个集合中都存在的元素。
示例代码:
set1 = {1, 2, 3}
set2 = {2, 3, 4}
print(set1.intersection(set2))
输出结果:
{2, 3}
6. union()
union()函数用于返回两个或多个集合的并集,包含所有集合中的元素,而不重复计算。
示例代码:
set1 = {1, 2, 3}
set2 = {2, 3, 4}
set3 = {5}
print(set1.union(set2, set3))
输出结果:
{1, 2, 3, 4, 5}
7. isdisjoint()
isdisjoint()函数用于判断两个集合是否没有共同的元素。如果两个集合没有共同的元素,则返回True,否则返回False。
示例代码:
set1 = {1, 2, 3}
set2 = {4, 5, 6}
set3 = {3, 4}
print(set1.isdisjoint(set2))
print(set1.isdisjoint(set3))
输出结果:
True False
8. issubset()
issubset()函数用于判断当前集合是否为另一个集合的子集。如果当前集合是另一个集合的子集,则返回True,否则返回False。
示例代码:
set1 = {1, 2, 3}
set2 = {1, 2, 3, 4, 5}
set3 = {6}
print(set1.issubset(set2))
print(set1.issubset(set3))
输出结果:
True False
9. issuperset()
issuperset()函数用于判断当前集合是否为另一个集合的父集。如果当前集合是
