Python入门教程+项目实战-13.2节-集合的操作方法

目录

13.2.1 集合的常用操作方法

13.2.2 集合的查找

13.2.3 集合的添加

13.2.4 集合的删除

13.2.4 集合运算

13.2.5 知识要点

13.2.6 系统学习python


13.2.1 集合的常用操作方法

集合类型是一种抽象数据类型,抽象数据类型定义了数据类型的操作方法,在本节的内容中,教同学们彻底掌握集合类型的常用操作方法。

字典的常用操作方法,主要有分为四类:集合的查找,集合的添加,集合的删除,集合的集合运算。不能对集合中的键进行修改,因为集合中的键必须是静态的数据类型

13.2.2 集合的查找

(1) 查找键是否存在

查找方法:

name in set
name not in set

name表示集合中的键,返回值为布尔类型,True表示键名存在,False表示键名不存在。not in 表示查找是否不存在。

代码实例:

# __desc__ = 查找集合中的键是否存在
 
stars = {"陈法蓉", "陈德蓉"}
 
star = "吴君如"
 
if star in stars:
    print("{} in stars".format(star))
 
if star not in stars:
    print("{} not in stars".format(star))

13.2.3 集合的添加

(1) set.add(key)

将键名key添加至集合中,无返回值。key必须是可哈希的数据类型,否则Python解释器会抛出类型错误的异常信息。

代码实例:

# __desc__ = 执行add方法来添加新的键
 
stars = {"陈法蓉", "陈德蓉"}
 
star = "吴君如"
 
if star not in stars:
    # 如果star 不在集合stars里面,就添加star
    stars.add(star)
 
if star in stars:
    print("{} in stars now".format(star))

集合中的元素必须是可哈希的数据类型,否则会报类型错误。

代码实例:

# __desc__ = 执行add方法来添加动态的数据类型
 
stars = {"陈法蓉", "陈德蓉"}
 
star = {"吴君如"}
 
if star not in stars:
  # 如果star 不在集合stars里面,就添加star
  stars.add(star)
 
# Python在解释执行stars.add(star)时抛出了类型错误的异常

(2) set.update(iterable)

参数iterable表示可迭代对象,执行update方法时,会将可迭代对象中的元素逐一添加到集合中。迄今为止学过的可迭代对象:字符串,列表,元组,字典,集合

代码实例:

# __desc__ = 执行update方法来添加可迭代对象中的元素
 
container = set()
 
# 字符串类型是可迭代对象
container.update("abc")
# container的输出为{"a","b","c"}
 
# 列表类型是可迭代对象
container.update([2])
# container的输出为{"a","b","c",2}
 
# 元组类型是可迭代对象
container.update((3.0, ))
# container的输出为{"a","b","c",2,3.0}
 
# 字典类型是可迭代对象
container.update({1: True, 0: False})
# container的输出为{"a","b","c",2,3.0,1,0}
 
 
# 集合类型是可迭代对象
container.update({"True", "False"})
# container的输出为{"a","b","c", 2, 3.0, 1, 0, "True", "False"}

13.2.4 集合的删除

(1) set.pop()

执行pop方法来随机删除集合中的元素,集合必须是一个非空集合,否则会抛出异常信息。返回值为被删除的元素。

代码实例:

# __desc__ = 执行pop方法来随机删除集合中的元素
 
stars = {"陈法蓉", "陈德蓉"}
star = stars.pop()
 
# star指向的值可能为"陈德蓉"

集合必须是一个非空集合,否则会抛出类型错误的异常信息,我们可以在交互模式中进行验证:

>>> set().pop()

Traceback (most recent call last):

File "", line 1, in

KeyError: 'pop from an empty set'

(2) set.remove(key)

执行remove方法来删除集合中指定的键,键不存在时会抛出异常信息,无返回值。

代码实例:

# __desc__ = 执行remove方法来删除集合中指定的键
 
stars = {"陈法蓉", "陈德蓉"}
stars.remove("陈法蓉")
# stars的输出为{"陈德蓉"}
 
# 键必须存在与集合中,否则会抛出键名不存在的异常信息
stars.remove("吴君如")
# Python抛出了异常信息

(1) set.clear()

执行clear方法来清空集合中的元素。

代码实例:

# __desc__ = 执行clear方法来清空集合中的所有元素
 
stars = {"陈法蓉", "陈德蓉"}
stars.clear()
 
# stars的输出为set(),表示空的集合

13.2.4 集合运算

通过Python中的集合类型,可以实现数学上的交集,并集,差集运算。

(1) 交集运算

交集,指的是获得两个集合中共有的元素,在Python中使用'&'操作符来实现交集运算。

代码实例:

# __desc__ = 执行&操作符来实现交集运算
 
hongkong_stars = {"陈法蓉", "陈德蓉"}
all_stars = {"陈德蓉", "林子祥"}
 
# 计算集合的交集 
stars = hongkong_stars & all_stars
# stars的输出为  {"陈德蓉"}

(2) 并集运算

并集指的是将两个集合中的元素进行合并,在Python中使用'|'操作符来实现并集运算。

代码实例:

# __desc__ = 执行|操作符来实现并集运算
 
hongkong_stars = {"陈法蓉", "陈德蓉"}
all_stars = {"陈德蓉", "林子祥"}
 
# 计算集合的并集
stars = hongkong_stars | all_stars
# stars的输出为  {"陈法蓉", "陈德蓉", "林子祥"}

(3) 差集运算

差集指的是对两个集合作减法运算,假设有集合A与集合B,那么集合A与集合B的差集表示属于A但不属于B的元素的集合,直接用算数运算符'-'来实现差集运算。

代码实例:

# __desc__ = 执行-操作符来实现差集运算
 
hongkong_stars = {"陈法蓉", "陈德蓉"}
all_stars = {"陈德蓉", "林子祥"}
 
# 计算集合的差集,就是对集合做减法运算
stars = hongkong_stars - all_stars
# stars的输出为  {"陈法蓉"}

13.2.5 知识要点

(1) 集合的常用操作方法,主要分为四类:集合的查找,集合的添加,集合的删除,集合的集合运算。

(2) 不能对集合中的键进行修改,因为集合中的键必须是静态的数据类型

(3) 迄今为止学过的可迭代对象:字符串,列表,元组,字典,集合

 

13.2.6 系统学习python

 薯条老师简介:资深技术专家,技术作家,著有《Python零基础入门指南》,《Java零基础入门指南》等技术教程。薯条老师的博客:http://www.chipscoco.com, 系统学习后端,爬虫,数据分析,机器学习、量化投资。

你可能感兴趣的:(Python入门教程,python,开发语言)