温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

set数据结构有哪些基础知识

发布时间:2020-07-29 11:44:59 来源:亿速云 阅读:437 作者:Leah 栏目:编程语言

set数据结构有哪些基础知识?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

 

1set数据结构的概念

set(集合)是一组无重复无序的数据,就像数学中集合的概念。它没有标准的括号包裹,[]表示list()表示tuple{}表示dict。但是我们可以用带值的大括号来定义。set数据结构最大的作用就是去除重复的元素,如下所示:

set1 = {1, 2, 2, 3, 3, 3}

print(set1)

set1.add(1)

set1.add(4)

print(set1)

2、使用场景

set数据结构在很多情况下⾮常有⽤,例如你可能想检查列表中是否包含重复的元素,你有两个选择,第⼀个需要使⽤for循环,就像这样:

some_list = ['a', 'b', 'c', 'b', 'd', 'm', 'n', 'n']

 

duplicates = []

for value in some_list:

if some_list.count(value) > 1:

if value not in duplicates:

duplicates.append(value)

 

print(duplicates)

### 输出: ['b', 'n']

但还有⼀种更简单更优雅的解决⽅案,那就是使⽤集合(sets),直接这样做:

some_list = ['a', 'b', 'c', 'b', 'd', 'm', 'n', 'n']

duplicates = set([x for x in some_list if some_list.count(x) > 1]) print(duplicates)

### 输出: set(['b', 'n'])

3、数学运算

1)交集

你可以对⽐两个集合的交集(两个集合中都有的数据),如下:

valid = set(['yellow', 'red', 'blue', 'green', 'black']) input_set = set(['red', 'brown'])

print(input_set.intersection(valid))

### 输出: set(['red'])

2)差集

你可以⽤差集(difference)找出⽆效的数据,相当于⽤⼀个集合减去另⼀个集合的数据,例如:

valid = set(['yellow', 'red', 'blue', 'green', 'black']) input_set = set(['red', 'brown'])

print(input_set.difference(valid))

### 输出: set(['brown'])

3)用符号

a_set = {'red', 'blue', 'green'}

print(type(a_set))

### 输出: <type 'set'>

 

看完上述内容,你们掌握set数据结构有哪些基础知识的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI