python set()函数

python set()函数

python set()函数

1. 简介

Python 中,set() 函数是一种用于创建集合的内置函数。集合是一种无序、不重复的数据类型,可以用于去除重复元素或者进行数学运算。

2. 语法

set() 函数的语法格式如下:

set([iterable])

iterable 参数是一个可迭代对象,例如列表、元组或字符串。如果没有提供 iterable 参数,set() 函数将创建一个空集合。

3. 创建集合

可以使用 set() 函数来创建一个集合。

3.1 创建空集合

如果没有提供 iterable 参数,set() 函数将创建一个空集合。

示例代码如下:

s = set()
print(s)

输出如下:

set()

3.2 从可迭代对象创建集合

可以使用列表、元组或字符串等可迭代对象来创建集合。

示例代码如下:

l = [1, 2, 3, 4, 4]  # 列表中有重复元素
s1 = set(l)
print(s1)

t = (1, 2, 3, 4, 4)  # 元组中有重复元素
s2 = set(t)
print(s2)

s = "hello"  # 字符串中有重复元素
s3 = set(s)
print(s3)

输出如下:

{1, 2, 3, 4}
{1, 2, 3, 4}
{'o', 'l', 'h', 'e'}

从输出可以看出,使用 set() 函数创建集合时,重复元素会被去除掉,而且集合中的元素是无序的。

4. 集合的基本操作

通过 set() 函数创建的集合可以执行以下基本操作。

4.1 添加元素

可以使用 add() 方法向集合中添加元素。

示例代码如下:

s = set()  # 创建空集合
s.add(1)   # 添加元素
s.add(2)
s.add(3)
print(s)

输出如下:

{1, 2, 3}

4.2 删除元素

可以使用 remove() 或 discard() 方法从集合中删除元素。

示例代码如下:

s = {1, 2, 3}  # 创建集合
s.remove(2)    # 删除元素
print(s)

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

输出如下:

{1, 3}
{1}

从输出可以看出,remove() 方法会在元素不存在时抛出 KeyError 异常,而 discard() 方法不会抛出异常。

4.3 清空集合

可以使用 clear() 方法清空集合。

示例代码如下:

s = {1, 2, 3}  # 创建集合
s.clear()      # 清空集合
print(s)

输出如下:

set()

4.4 判断元素是否存在

可以使用 in 关键字来判断元素是否存在于集合中。

示例代码如下:

s = {1, 2, 3}  # 创建集合
print(1 in s)
print(4 in s)

输出如下:

True
False

4.5 获取集合长度

可以使用 len() 函数获取集合中元素的个数。

示例代码如下:

s = {1, 2, 3}  # 创建集合
print(len(s))

输出如下:

3

5. 集合运算

集合可以进行数学运算,例如并集、交集、差集等。

5.1 并集

可以使用 | 运算符或 union() 方法来计算两个集合的并集。

示例代码如下:

s1 = {1, 2, 3}  # 创建集合1
s2 = {3, 4, 5}  # 创建集合2

# 使用 | 运算符计算并集
s3 = s1 | s2
print(s3)

# 使用 union() 方法计算并集
s4 = s1.union(s2)
print(s4)

输出如下:

{1, 2, 3, 4, 5}
{1, 2, 3, 4, 5}

5.2 交集

可以使用 & 运算符或 intersection() 方法来计算两个集合的交集。

示例代码如下:

s1 = {1, 2, 3}  # 创建集合1
s2 = {3, 4, 5}  # 创建集合2

# 使用 & 运算符计算交集
s3 = s1 & s2
print(s3)

# 使用 intersection() 方法计算交集
s4 = s1.intersection(s2)
print(s4)

输出如下:

{3}
{3}

5.3 差集

可以使用 – 运算符或 difference() 方法来计算两个集合的差集。

示例代码如下:

s1 = {1, 2, 3}  # 创建集合1
s2 = {3, 4, 5}  # 创建集合2

# 使用 - 运算符计算差集
s3 = s1 - s2
print(s3)

# 使用 difference() 方法计算差集
s4 = s1.difference(s2)
print(s4)

输出如下:

{1, 2}
{1, 2}

5.4 对称差集

可以使用 ^ 运算符或 symmetric_difference() 方法来计算两个集合的对称差集,即两个集合中独有的元素。

示例代码如下:

s1 = {1, 2, 3}  # 创建集合1
s2 = {3, 4, 5}  # 创建集合2

# 使用 ^ 运算符计算对称差集
s3 = s1 ^ s2
print(s3)

# 使用 symmetric_difference() 方法计算对称差集
s4 = s1.symmetric_difference(s2)
print(s4)

输出如下:

{1, 2, 4, 5}
{1, 2, 4, 5}

6. 集合的迭代

可以使用 for 循环来遍历集合中的元素。

示例代码如下:

s = {1, 2, 3}  # 创建集合
for x in s:
    print(x)

输出如下:

1
2
3

7. 总结

通过 set() 函数可以创建一个集合,集合是一种无序、不重复的数据类型。可以对集合进行添加元素、删除元素、清空集合、判断元素是否存在、获取集合长度等基本操作,还可以进行并集、交集、差集、对称差集等数学运算。可以使用 for 循环来遍历集合中的元素。

8. 注意事项

  • 集合中的元素是无序且不重复的。
  • set() 函数可以用于去除重复元素。
  • 使用 add() 方法可以向集合中添加元素。
  • 使用 remove() 方法可以删除集合中的元素,如果元素不存在会抛出 KeyError 异常。
  • 使用 discard() 方法可以删除集合中的元素,如果元素不存在不会抛出异常。
  • 使用 clear() 方法可以清空集合。
  • 使用 in 关键字可以判断元素是否存在于集合中。
  • 使用 len() 函数可以获取集合中元素的个数。
  • 使用 | 运算符或 union() 方法可以计算两个集合的并集。
  • 使用 & 运算符或 intersection() 方法可以计算两个集合的交集。
  • 使用 – 运算符或 difference() 方法可以计算两个集合的差集。
  • 使用 ^ 运算符或 symmetric_difference() 方法可以计算两个集合的对称差集。
  • 可以使用 for 循环遍历集合中的元素。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程