Python 教程

Python 教程 Python 简介 Python 历史 Python 下载安装 Python 入门 Python 语法 Python 注释 Python 变量 Python 数据类型 Python 数值类型 Python 类型转换 Python 字符串 Python 布尔值 Python 运算符 Python 列表 Python 元组 Python 集合 Python 字典 Python If...Else Python While 循环 Python For 循环 Python 函数 Python Lambda Python 数组 Python 类和对象 Python 继承 Python 迭代 Python 作用域 Python 模块 Python 日期时间 Python 数学运算 Python JSON Python 正则表达式 Python PIP Python Try...Except Python 用户输入 Python 字符串格式化

Python 文件处理

Python 文件处理 Python 打开文件 Python 创建/写入文件 Python 删除文件

Python NumPy

NumPy 简介 NumPy 入门 NumPy 创建数组 NumPy 数组索引 NumPy 数组裁切 NumPy 数据类型 NumPy 副本 vs 视图 NumPy 数组形状 NumPy 数组重塑 NumPy 数组迭代 NumPy 数组连接 NumPy 数组拆分 NumPy 数组搜索 NumPy 数组排序 NumPy 数组过滤 NumPy 随机数 NumPy ufunc 通用函数

Python SciPy

SciPy 简介 SciPy 入门 SciPy 常量 SciPy 优化器 SciPy 稀疏数据 SciPy 图表 SciPy 空间数据 SciPy Matlab 数组 SciPy 插值 SciPy 统计显着性检验

Python 机器学习

Machine 机器学习入门 Machine 平均中位数模式 Machine 标准差 Machine 百分位数 Machine 数据分布 Machine 正态数据分布 Machine 散点图 Machine 线性回归 Machine 多项式回归 Machine 多元回归 Machine 缩放 Machine 训练/测试 Machine 决策树

Python MySQL

MySQL 入门 MySQL Create Database MySQL Create Table MySQL Insert MySQL Select MySQL Where MySQL Order By MySQL Delete MySQL Drop Table MySQL Update MySQL Limit MySQL Join

Python MongoDB

MongoDB 入门 MongoDB 创建数据库 MongoDB 创建集合 MongoDB 插入 MongoDB 查找 MongoDB 查询 MongoDB 排序 MongoDB 删除 MongoDB 删除集合 MongoDB 更新 MongoDB 限制

Python 参考手册

Python 参考手册 Python 内置函数 Python 字符串方法 Python 列表/数组方法 Python 字典方法 Python 元组方法 Python 集合方法 Python 文件方法 Python 关键字 Python 内置异常 Python 词汇表

Python 模块参考

Python 随机模块 Python 请求模块 Python 统计模块 Python 数学模块 Python cMath模块

Python 如何使用

Python 删除列表重复项 Python 反转字符串 Python 添加两个数字

Python 高级教程

Python 常用指引 将Python2代码迁移到Python3 将扩展模块移植到 Python3 Curses 编程 描述器使用指南 函数式编程指引 日志常用指引 日志操作手册 正则表达式使用指南 套接字编程指南 排序指南 Unicode 指南 如何利用urllib包获取网络资源 Argparse 教程 ipaddress 模块介绍 Argument Clinic 的用法 使用DTrace和SystemTap检测CPython 对象注解属性的最佳实践

Python 实例

Python 实例 Python 编译器 Python 练习 Python 测验 NumPy 测验 SciPy 测验


Python 集合

集合(Set)

集合是无序和无索引的集合。在 Python 中,集合用花括号编写。

实例

创建集合:

thisset = {"apple", "banana", "cherry"}
print(thisset)
亲自试一试 »

注释: 集合是无序的,因此您无法确定项目的显示顺序。


访问项目

您无法通过引用索引来访问 set 中的项目,因为 set 是无序的,项目没有索引。

但是您可以使用 for 循环遍历 set 项目,或者使用 in 关键字查询集合中是否存在指定值。

实例

遍历集合,并打印值:

thisset = {"apple", "banana", "cherry"}

for x in thisset:
  print(x)
亲自试一试 »

实例

检查 set 中是否存在 "banana":

thisset = {"apple", "banana", "cherry"}

print("banana" in thisset)
亲自试一试 »

更改项目

集合一旦创建,您就无法更改项目,但是您可以添加新项目。


Add Items

要将一个项添加到集合,请使用 add() 方法。

要向集合中添加多个项目,请使用 update() 方法。

实例

使用 add() 方法向 set 添加项目:

thisset = {"apple", "banana", "cherry"}

thisset.add("orange")

print(thisset)
亲自试一试 »

实例

使用 update() 方法将多个项添加到集合中:

thisset = {"apple", "banana", "cherry"}

thisset.update(["orange", "mango", "grapes"])

print(thisset)
亲自试一试 »

获取 Set 的长度

要确定集合中有多少项,请使用 len() 方法。

实例

获取集合中的项目数:

thisset = {"apple", "banana", "cherry"}

print(len(thisset))
亲自试一试 »

删除项目

要删除集合中的项目,请使用 remove(), 或 discard() 方法。

实例

使用 remove() 方法来删 "banana" :

thisset = {"apple", "banana", "cherry"}

thisset.remove("banana")

print(thisset)
亲自试一试 »

注释: 如果要删除的项目不存在,则 remove() 将引发错误。

实例

使用 discard() 方法来删除 "banana":

thisset = {"apple", "banana", "cherry"}

thisset.discard("banana")

print(thisset)
亲自试一试 »

注释: 如果要删除的项目不存在,则 discard() 不会引发错误。

您还可以使用 pop()方法删除项目,但此方法将删除最后一项。请记住,set 是无序的,因此您不会知道被删除的是什么项目。

pop() 方法的返回值是被删除的项目。

实例

使用pop() 方法删除最后一项:

thisset = {"apple", "banana", "cherry"}

x = thisset.pop()

print(x)

print(thisset)
亲自试一试 »

注释: 集合是无序的,因此在使用 pop() 方法时,您不会知道删除的是哪个项目。

实例

clear() 方法清空集合:

thisset = {"apple", "banana", "cherry"}

thisset.clear()

print(thisset)
亲自试一试 »

实例

del 彻底删除集合:

thisset = {"apple", "banana", "cherry"}

del thisset

print(thisset)
亲自试一试 »

合并两个集合

在 Python 中,有几种方法可以连接两个或多个集合。

您可以使用 union() 方法返回包含两个集合中所有项目的新集合,也可以使用 update() 方法将一个集合中的所有项目插入另一个集合中:

实例

union() 方法返回一个新集合,其中包含两个集合中的所有项目:

set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}

set3 = set1.union(set2)
print(set3)
亲自试一试 »

实例

update() 方法将 set2 中的项目插入 set1 中:

set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}

set1.update(set2)
print(set1)
亲自试一试 »

注释: union()update()都将排除任何重复项。

还有其他方法将两个集合连接起来,并且仅保留重复项,或者永远不保留重复项,请查看此页面底部的集合方法完整列表。


set() 构造函数

也可以使用 set() 构造函数来创建集合。

实例

使用 set() 构造函数来创建集合:

thisset = set(("apple", "banana", "cherry")) # 注意双圆括号
print(thisset)
亲自试一试 »

Set 方法

Python 拥有一套能够在集合(set)上使用的内建方法。

方法 描述
add()向集合添加元素。
clear()删除集合中的所有元素。
copy()返回集合的副本。
difference()返回包含两个或更多集合之间差异的集合。
difference_update()删除此集合中也包含在另一个指定集合中的项目。
discard()删除指定项目。
intersection()返回为两个其他集合的交集的集合。
intersection_update()删除此集合中不存在于其他指定集合中的项目。
isdisjoint()返回两个集合是否有交集。
issubset()返回另一个集合是否包含此集合。
issuperset()返回此集合是否包含另一个集合。
pop()从集合中删除一个元素。
remove()删除指定元素。
symmetric_difference()返回具有两组集合的对称差集的集合。
symmetric_difference_update()插入此集合和另一个集合的对称差集。
union()返回包含集合并集的集合。
update()用此集合和其他集合的并集来更新集合。

学习训练

练习题:

检查fruits集合中是否有"apple"。

fruits = {"apple", 
"banana",
"cherry"} if "apple" fruits: print("Yes, apple is a fruit!")

开始练习