优草派  >   Python

python的set用法?

王子涵            来源:优草派

Python的set用法

python的set用法?

在Python中,set是一种无序不重复元素集合的数据类型。它是在Python2.4中引入的,是一种可迭代的类型,可以很方便地进行交集、并集、差集等操作,非常适合用来对一些数据进行去重或者判断两个集合之间的差异。下面从多个角度来详细介绍set的用法。

1. 创建set

创建set非常简单,只需要使用花括号{}或者set()函数即可。例如:

# 使用花括号

my_set = {1, 2, 3}

# 使用set函数

my_set_1 = set([1, 2, 3])

my_set_2 = set((1, 2, 3))

2. 添加元素

set可以通过add()方法和update()方法来添加元素。其中,add()方法只能添加单个元素,而update()方法可以添加多个元素。例如:

# 使用add()方法添加单个元素

my_set = {1, 2, 3}

my_set.add(4)

print(my_set) # {1, 2, 3, 4}

# 使用update()方法添加多个元素

my_set = {1, 2, 3}

my_set.update([3, 4, 5])

print(my_set) # {1, 2, 3, 4, 5}

3. 删除元素

set可以通过remove()方法和discard()方法来删除元素。其中,remove()方法删除一个元素,如果元素不存在会抛出KeyError异常;discard()方法删除一个元素,如果元素不存在不会抛出异常。例如:

# 使用remove()方法删除元素

my_set = {1, 2, 3}

my_set.remove(3)

print(my_set) # {1, 2}

# 使用discard()方法删除元素

my_set = {1, 2, 3}

my_set.discard(4)

print(my_set) # {1, 2, 3}

4. 操作集合

set支持一些集合操作,如交集、并集、差集等。其中,交集可以使用&运算符或者intersection()方法;并集可以使用|运算符或者union()方法;差集可以使用-运算符或者difference()方法。例如:

# 交集

my_set_1 = {1, 2, 3}

my_set_2 = {1, 3, 5}

print(my_set_1 & my_set_2) # {1, 3}

print(my_set_1.intersection(my_set_2)) # {1, 3}

# 并集

my_set_1 = {1, 2, 3}

my_set_2 = {3, 4, 5}

print(my_set_1 | my_set_2) # {1, 2, 3, 4, 5}

print(my_set_1.union(my_set_2)) # {1, 2, 3, 4, 5}

# 差集

my_set_1 = {1, 2, 3}

my_set_2 = {3, 4, 5}

print(my_set_1 - my_set_2) # {1, 2}

print(my_set_1.difference(my_set_2)) # {1, 2}

5. 判断元素是否存在

set可以使用in运算符来判断元素是否存在于集合中。例如:

my_set = {1, 2, 3}

if 1 in my_set:

print('元素存在')

6. 总结

set是一种非常常用且方便的数据类型,在对数据进行去重或者判断两个集合之间的差异时非常有用。同时,它也支持一些集合操作,使得我们可以非常方便地对集合进行操作。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行