「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:小白零基础《Python入门到精通》
add函数使用详解
- 1、元素的顺序
- 2、可以添加的元素类型
- 3、添加重复的元素
- 4、一次只能添加一个元素
add() 函数可以给集合「添加」元素。
语法
set.add( element )
参数
- element :(必选)需要添加的元素
返回值
- None,没有返回值,值修改原集合。
实例:向集合中添加元素
set1 = {1, 2, 3}
set1.add(4)
print(set1)
输出:
{1, 2, 3, 4}
1、元素的顺序
add() 并不是将元素插入到集合的「末尾」。因为集合「不保证」元素的「顺序」,所以我们每次打印,元素的位置都会发生变化。
set1 = {1, 2, 3}
set1.add('ZhangSan')
set1.add('LiSi')
set1.add('WangWu')
set1.add('QianLiu')
set1.add('SunQi')
print(set1)
输出:
{1, 2, 3, 'ZhangSan', 'QianLiu', 'WangWu', 'LiSi', 'SunQi'}
从输出结果可以看到,元素并非按照添加的顺序展示;尝试多次打印,会发现每次的顺序都不一样。
需要注意的是,使用「循环」的方式打印,元素的顺序就不会再发生变化
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
输出:
{'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类型」,不能是列表、集合、字典类型。
set1 = {1, 2, 3}
set1.add('str')
set1.add((4, 5, 6))
set1.add(b'123')
print(set1)
输出:
{1, 2, 3, (4, 5, 6), 'str', b'123'}
添加不允许的元素类型时,会报错 TypeError: unhashable type: ‘list’
3、添加重复的元素
集合中的元素不允许「重复」,如果添加集合中「已经存在」的元素,则不会执行添加的操作,当然,也不会报错。
set1 = {1, 2, 3}
set1.add(3)
print(set1)
输出:
{1, 2, 3}
4、一次只能添加一个元素
add() 只接收一个参数,这意味着每次只能添加「一个元素」,否则会报错 TypeError: add() takes exactly one argument
set1.add(1, 2)