Python 集合 add()函数使用详解,集合添加元素

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:小白零基础《Python入门到精通》

add函数使用详解

add() 函数可以给集合「添加」元素。

语法

python 复制代码
set.add( element )

参数

  • element :(必选)需要添加的元素

返回值

  • None,没有返回值,值修改原集合。

实例:向集合中添加元素

python 复制代码
set1 = {1, 2, 3}
set1.add(4)
print(set1)

输出:

bash 复制代码
{1, 2, 3, 4}

1、元素的顺序

add() 并不是将元素插入到集合的「末尾」。因为集合「不保证」元素的「顺序」,所以我们每次打印,元素的位置都会发生变化。

python 复制代码
set1 = {1, 2, 3}
set1.add('ZhangSan')
set1.add('LiSi')
set1.add('WangWu')
set1.add('QianLiu')
set1.add('SunQi')

print(set1)

输出:

bash 复制代码
{1, 2, 3, 'ZhangSan', 'QianLiu', 'WangWu', 'LiSi', 'SunQi'}

从输出结果可以看到,元素并非按照添加的顺序展示;尝试多次打印,会发现每次的顺序都不一样。

需要注意的是,使用「循环」的方式打印,元素的顺序就不会再发生变化

python 复制代码
set1 = {1, 2, 3}
set1.add('ZhangSan')
set1.add('LiSi')
set1.add('WangWu')
set1.add('QianLiu')
set1.add('SunQi')

i = 0
while i < 10:
    print(set1)
    i += 1

输出:

bash 复制代码
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}
{'WangWu', 1, 2, 3, 'SunQi', 'ZhangSan', 'LiSi', 'QianLiu'}

2、可以添加的元素类型

add() 添加的元素,可以是「字符串」、「元组」、「bytes类型」,不能是列表、集合、字典类型。

python 复制代码
set1 = {1, 2, 3}

set1.add('str')
set1.add((4, 5, 6))
set1.add(b'123')
print(set1)

输出:

bash 复制代码
{1, 2, 3, (4, 5, 6), 'str', b'123'}

添加不允许的元素类型时,会报错 TypeError: unhashable type: 'list'

3、添加重复的元素

集合中的元素不允许「重复」,如果添加集合中「已经存在」的元素,则不会执行添加的操作,当然,也不会报错。

python 复制代码
set1 = {1, 2, 3}
set1.add(3)
print(set1)

输出:

bash 复制代码
{1, 2, 3}

4、一次只能添加一个元素

add() 只接收一个参数,这意味着每次只能添加「一个元素」,否则会报错 TypeError: add() takes exactly one argument

python 复制代码
set1.add(1, 2)
相关推荐
松☆4 小时前
CANN与大模型推理:在边缘端高效运行7B参数语言模型的实践指南
人工智能·算法·语言模型
结局无敌4 小时前
深度探究cann仓库下的infra:AI计算的底层基础设施底座
人工智能
m0_466525294 小时前
绿盟科技风云卫AI安全能力平台成果重磅发布
大数据·数据库·人工智能·安全
慢半拍iii4 小时前
从零搭建CNN:如何高效调用ops-nn算子库
人工智能·神经网络·ai·cnn·cann
java干货5 小时前
为什么 “File 10“ 排在 “File 2“ 前面?解决文件名排序的终极算法:自然排序
开发语言·python·算法
机器懒得学习5 小时前
智能股票分析系统
python·深度学习·金融
毕设源码-郭学长5 小时前
【开题答辩全过程】以 基于python的二手房数据分析与可视化为例,包含答辩的问题和答案
开发语言·python·数据分析
晟诺数字人5 小时前
2026年海外直播变革:数字人如何改变游戏规则
大数据·人工智能·产品运营
蛋王派5 小时前
DeepSeek-OCR-v2 模型解析和部署应用
人工智能·ocr
SR_shuiyunjian5 小时前
Python第三次作业
python