{ } ——创建集合
文章目录
1.集合的概念
集合(set)是Python中的一种基础数据类型。
集合一个可迭代的、无序的、不能包含重复元素的容器类型数据。
【集合的特征】
1.集合用英文大括号{ }表示。
2.集合的元素是无序的。
3.集合的元素是不能重复的。
4.集合的元素只能是不可变数据类型。
5.集合本身是可变的数据类型。
【温馨提示】
集合是无序的,因此每次输出时元素的排列顺序可能都不相同。
在Python中,集合和字典都用英文大括号{ }表示。
共同点是:元素之间都用英文逗号,
分隔。
区别是:字典的每个元素是由键和值组成的,但集合没有键值对。
【不可变数据类型】字符串、整数、浮点数、元组。
【可变数据类型】列表、字典、集合。
2.用{ }创建集合
3.实操练习
1.创建元素为字符串的集合
# 元素为字符串的集合
set_1 = {'a','a','a','a'}
print('元素为字符串的集合',set_1)
【终端输出】
元素为字符串的集合 {'a'}
集合的元素是不能重复的:因此输出结果只保留了1个字符串’a’。
集合的元素为字符串,字符串是不可变数据类型。
2.创建元素为整数的集合
# 元素为整数的集合
set_2 = {1, 3, 9, 9, 9, 9}
print('元素为整数的集合',set_2)
【终端输出】
元素为整数的集合 {1, 3, 9}
集合的元素是不能重复的:因此输出结果中9只保留了1个。
集合的元素为整数,整数是不可变数据类型。
3.创建元素为浮点数的集合
# 元素为浮点数的集合
set_3 = {0.5, 1.1, 1.1 ,1.1}
print('元素为浮点数的集合',set_3)
【终端输出】
元素为浮点数的集合 {0.5, 1.1}
集合的元素是不能重复的:因此输出结果中1.1只保留了1个。
集合的元素为浮点数,浮点数是不可变数据类型。
4.创建元素为元组的集合
# 元素为元组的集合
# 元组用()表示
set_4 = {('人生苦短', '我用Python'),('人生苦短', '我用Python')}
print('元素为元组的集合',set_4)
【终端输出】
元素为元组的集合 {('人生苦短', '我用Python')}
集合中有2个相同的元组,但集合的元素是不能重复的,因此输出结果中只保留了1个元组。
集合的元素为元组,元组是不可变数据类型。
5.创建元素为布尔值的集合
# 元素为布尔值的集合
# 布尔值:True, False
set_5 = {True, False, True, False}
print('元素为布尔值的集合',set_5)
【终端输出】
元素为布尔值的集合 {False, True}
集合的元素是不能重复的:因此输出结果中布尔值只保留了1个。
6.集合的元素不能是列表
# 元素为列表的集合
# 列表用[]表示
set_6 = {['张三','李四','张三']}
print('元素为列表的集合',set_6)
【终端输出】
TypeError: unhashable type: 'list'
集合的元素为列表,列表是可变数据类型,程序报错。
unhashable type: ‘list’:不可销毁的类型:“列表”。
7.集合的元素不能是字典
# 元素为字典的集合
# 字典也用{}表示
dict_1 = {
'name':'Lily',
'age':'20',
'sex':'female'
}
set_7 = {dict_1}
print('元素为字典的集合',set_7)
【终端输出】
TypeError: unhashable type: 'dict'
集合的元素为字典,字典是可变数据类型,程序报错。
unhashable type: ‘dict’:无法删除的类型:“dict”。
8.集合的元素不能是集合
# 元素为集合的集合
# 集合用{}表示
set_8 = {{'a','b'}}
print('元素为集合的集合',set_8)
【终端输出】
TypeError: unhashable type: 'set'
集合的元素为集合,集合是可变数据类型,程序报错。
unhashable type: ‘set’:不可销毁的类型:“set”。
9.创建包含多种数据类型的集合
# 集合的元素含有多种数据类型
set_9 = {'a','b',True, 2, 9.9 , 9.9 }
print('元素为多种数据的集合',set_9)
【终端输出】
元素为多种数据的集合 {True, 2, 'b', 9.9, 'a'}
【温馨提示】
集合是无序的,每次因此每次输出时元素的排列顺序可能都不相同。
10.for循环遍历集合中的元素
# 循环遍历集合中的元素
set_10 = {'a','b',True, 2, 9.9 , 9.9 }
for i in set_10 :
print(i)
【终端输出】
True
2
b
9.9
a