python集合

Posted 眰恦ღ

tags:

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

集合

set集合是一个无序不重复元素集。由于set是一个无序集合,set并不记录元素位置,所以不支持下标操作和切片操作

如何创建?

# 1. 创建一个空的set集合
my_set = set()
# 2. 创建一个包含元素的集合
my_set = 10, 20, 30, 40
print(my_set)
# 3. 用一个容器来创建集合
# 注意:set会剔除重复元素
my_set = set([1, 2, 3, 4, 5, 5])
print(my_set)
# 4. 创建一个唯一元素的字符集合
my_set = set("hello world!")
print(my_set)

如何添加元素?

向set集合中添加元素,可以使用add()函数和update()函数,add()可以一次添加一个元素,update()函数可以一次添加多个元素.

# 创建一个空的集合
my_set = set()
# add()函数向set中添加元素
my_set.add(10)
my_set.add(20)
my_set.add(30)
# 打印set集合
print(my_set)
# update()函数添加多个元素
my_set.update([60, 40, 80, 90])
my_set.update((160, 140, 180, 190))
my_set.update("hello")
# 如果添加的元素是一个字典,那么将字典的key添加到集合中
# my_set.update("name": "smith", "age": 1030)
print(my_set)

如何删除元素?

删除set集合中的元素可以使用pop()、remove()函数、discard()函数

  1. pop()函数会删除set集合中的任意一个元素,如果set集合为空,会抛出KeyError错误。

  2. remove(element)函数从集合中删除一个元素,如果元素不存在,会抛出KeyError错误。

  3. discard(val)函数删除集合中的一个元素,如果不存在,则不做任何事.

my_set = set([9, 2, 3, 4, 7])

# 删除任意一个元素
my_set.pop()
print(my_set)

# 删除指定元素
my_set.remove(4)
print(my_set)

# 删除元素
my_set.discard(3)
print(my_set)

集合的遍历?

# 创建一个空的集合
my_set = set([1, 2, 3, 4])
# 遍历set集合
for value in my_set:
 print(value, end="|")

集合交集和并集

my_set1 = set([1, 2, 3, 4, 5])
my_set2 = set([3, 4, 5, 6, 7])
# 1. 求两个集合的并集
new_set1 = my_set1.union(my_set2)
# 或者
new_set2 = my_set1 | my_set2
print(new_set1)
print(new_set2)
# 2. 求两个集合的交集
new_set3 = my_set1.intersection(my_set2)
# 或者
new_set4 = my_set1 & my_set2
print(new_set3)
print(new_set4)

set应用: 统计字符个数

# 统计字符串中字符的个数
my_string = input("请输入任意字符串:")
# 先对字符串去重
59
new_string = set(my_string)
# 字典记录字符出现次数
my_count = 
# 遍历new_string
for ch in new_string:
 my_count[ch] = my_string.count(ch)
# 输出结果
print(my_count)

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

python-集合

python集合的用法

python-- 集合

python-集合

Python学习——集合

Python 集合类型