10_set集合

Posted 短毛兔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了10_set集合相关的知识,希望对你有一定的参考价值。

一、集合类型

集合是一组无序排列的可哈希的值(可哈希的值->不可变),集合成员可以做字典中的键。但集合本身是不可哈希的。

集合是无序没有索引,也没有像字典的key,所以集合不能更改元素。只能增删查(print、for循环)

集合的作用:

  1. 去重复元素
  2. 关系测试:交集、并集、差集、反交集、超集

二、集合的操作

1.集合的创建

#set 的创建
set1 = set(‘abcde‘)  #def __init__(self, seq=()):  接受一个可迭代对象
set2 = {1,2,7,3,8,4,5,6}  #直接赋值
print(set1)
print(set2)

2.去重

#利用set去重
li = [2,4,1,3,4,5,6,7,3,3]
set1 = set(li)
li = list(set1)

print(li)

3.集合的增

3.1添加一个元素方法

#添加一个元素使用set.add()
set1 = {1,2,7,3,8,4,5,6}
set1.add(‘a‘) #Add an element to a set.
print(set1)  #{1, 2, 3, 4, 5, 6, 7, 8, ‘a‘}

3.2迭代添加元素.接受一个可迭代对象,字符串、元组、列表、字典

#迭代添加
s1 = ‘中国‘
set1 = {1,2,7,3,8,4,5,6}
set1.update(s1) #接受一个可迭代对象。把每个元素拆开,添加到set中
print(set1)

4.集合的删

4.1删除一个元素从set中

#删除一个元素从set中
set1 = {1,2,7,3,8,4,5,6,‘a‘}
set1.remove(‘a‘) #Remove an element from a set
print(set1)

4.2随机删除元素

#随机删,并返回被删除元素
set1 = {1,2,7,3,8,4,5,6,a}
set2 = set1.pop()  #Remove and return an arbitrary set element.

print(set2)
print(set1)

5.集合的其他操作

#1.print打印
set1 = {1,2,7,3,8,4,5,6,‘a‘}
print(set1)

#2.for循环
for i in set1:
    print(i)

#3.in not in
print(‘a‘ in set1)

#4.len()获取长度
print(‘集合长度:%d‘%(len(set1)))

 

 三、关系测试

 

以上是关于10_set集合的主要内容,如果未能解决你的问题,请参考以下文章

比较 C# 中的字符串片段并从集合中删除项目

python之set集合基本操作

python 数据类型 --- 集合

Python基础操作-集合

[Aizu] ITP2_9_A~D: Set Operation

集合类不安全_List_Set_HashMap