本文实例讲述了python数据类型之set集合。分享给大家供大家参考,具体如下:
set集合
1.概述
set与dict类似,但set是一组key的集合,与dict的区别在于set不存储value。
本质:无序且无重复元素的集合(具有自动去重的功能)。
2.set的创建
语法:
1
|
set1 = set ([ 1 , 2 , 3 , 4 , 5 ])
|
注意:创建set需要一个list或者tuple或者dist作为输入集合,重复的元素在set中会被自动的过滤
1
2
|
s1 = set ([ 1 , 2 , 3 , 4 , 5 ])
print (s1)
|
输出:
{1, 2, 3, 4, 5}
3.set操作
3.1 set.add()
1.可以添加重复的元素,但是不会有效果
2.add 的元素不能是列表或者字典,因为他们是可变的
1
2
3
4
|
s1 = set ([ 1 , 2 , 3 , 4 , 5 ])
s1.add( 6 )
s1.add(( 2 , 3 , 4 ))
print (s1)
|
结果
{1, 2, 3, 4, 5, 6, (2, 3, 4)}
3.2 set.update()
功能:插入整个list、tuple、字符串打碎插入
注意:不能直接插入数字。
1
2
3
4
|
s1 = set ([ 1 , 2 , 3 , 4 , 5 ])
s1.update([ 4 , "anam" , "hha" ])
s1.update( "hello" )
print (s1)
|
结果
{1, 2, 3, 4, 5, 'anam', 'l', 'o', 'h', 'e', 'hha'}
3.3 set.remove(元素)
功能:删除元素
1
2
3
|
s1 = set ([ 1 , 2 , 3 , 4 , 5 ])
s1.remove( 3 )
print (s1)
|
输出:
{1, 2, 4, 5}
3.4 遍历元素
语法:
for i in set :
print(i)注意:set是无序的,因此不能通过下标获取元素。
for index, data in enumerate(set):
print(index, data)可以通过这种方式,来强行添加下标
1
2
3
4
5
|
s1 = set ([ 1 , 2 , 3 , 4 , 5 ])
for i in s1:
print (i)
for index,data in enumerate (s1):
print (index, data)
|
输出:
1
2
3
4
5
0 1
1 2
2 3
3 4
4 5
3.5 交集与并集
语法:
交集 newest = set1 & set2
并集 newest = set1 | set2
1
2
3
4
5
6
|
s1 = set ([ 1 , 2 , 3 , 4 , 5 ])
s2 = set ([ 4 , 5 , 6 , 7 ])
s3 = s1 & s2
s4 = s1 | s2
print (s3)
print (s4)
|
结果
{4, 5}
{1, 2, 3, 4, 5, 6, 7}
希望本文所述对大家python程序设计有所帮助。
原文链接:https://blog.csdn.net/lm_is_dc/article/details/80077262