Python如何高效运用集合类型进行数据操作?

2026-06-11 10:441阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1798个文字,预计阅读时间需要8分钟。

Python如何高效运用集合类型进行数据操作?

Python中的集合类型操作与应用

Python中的集合类型是一个包含无序、不重复数据项的集合。它是一个包含0个或多个数据项的集合,元素之间没有顺序,且不包含重复项。集合中的元素类型必须是固定的,例如整数、浮点数等。

集合类型在Python中有着广泛的应用,以下是一些常见操作:

1. 创建集合:使用花括号`{}`或`set()`函数创建集合。

2.添加元素:使用`add()`方法或`|`运算符。

3.删除元素:使用`remove()`方法或`-`运算符。

4.检查元素是否存在:使用`in`或`not in`运算符。

5.集合运算:并集`|`、交集`&`、差集`-`、对称差集`^`。

例如:

python

创建集合my_set={1, 2, 3}

添加元素my_set.add(4)

删除元素my_set.remove(2)

检查元素print(3 in my_set) # 输出:True

集合运算other_set={3, 4, 5}print(my_set | other_set) # 输出:{1, 3, 4, 5}print(my_set & other_set) # 输出:{3}print(my_set - other_set) # 输出:{1, 2}print(my_set ^ other_set) # 输出:{1, 2, 4, 5}

Python集合类型的操作与应用

一、Python集合类型

Python中的集合类型是一个包含0个或多个数据项的无序的、不重复的数据组合,其中,元素类型只能是固定数据类型,如整数、浮点数、字符串、元组等,相反,如列表、字典和集合类型本身都是可变数据类型,因此不能作为集合元素使用。

1.无序性

集合是无序组合,没有索引和位置的概念,不能分片,集合中的元素可以动态增加或删除。集合用大括号“{}”表示。

s={1,2,3,‘a‘,‘b‘,(5,‘c‘)} print(s)

由上例可知,集合元素打印后的顺序和定义顺序可以不同。

2.不重复性

集合元素是独一无二的,使用集合类型可以过滤掉重复元素。set(x)函数用于生成集合,输入任意组合数据类型的参数,返回一个无序不重复的集合。

s=set(‘omg‘) print(s)

s=set((‘human‘,‘animal‘,‘water‘,‘oil‘)) print(s)

二、集合类型的关系操作

1.S-T或S.difference(T):S与T的差集。返回一个新集合,包括在集合S中但不在集合T中的元素。

S={1,2,3,4} T={2,3,4,5} print(S-T)

或者

S={1,2,3,4} T={2,3,4,5} print(S.difference(T))

S={1,2,3,4} T={2,3,4,5} print(T-S)

或者

S={1,2,3,4} T={2,3,4,5} print(T.difference(S))

2.S&T或S.intersection(T):S与T的交集。返回一个新集合,包括同时在集合S和集合T中的元素。

S={1,2,3,4} T={2,3,4,5} print(S&T)

或者

S={1,2,3,4} T={2,3,4,5} print(S.intersection(T))

3.S|T或S.union(T):S与T的并集。返回一个新集合,包括集合S和集合T中的所有元素。

S={1,2,3,4} T={2,3,4,5} print(S|T)

或者

S={1,2,3,4} T={2,3,4,5} print(S.union(T))

4.S^T或S.symmetric_difference(T):S与T的对等差集,包括集合S和集合T中的元素,但不包括同时在其中的元素。

S={1,2,3,4} T={2,3,4,5} print(S^T)

或者

S={1,2,3,4} T={2,3,4,5} print(S.symmetric_difference(T))

5.S<=T或S.issubset(T):如果S与T相同或S是T的子集,返回True,否则返回False,可以用S<T判断S是否是T的真子集。

S={1,2,3} T={1,2,3,4,5} print(S<=T)

或者

Python如何高效运用集合类型进行数据操作?

S={1,2,3} T={1,2,3,4,5} print(S.issubset(T))

6.S>=T或S.issuperset(T):如果S与T相同或S是T的父集,返回True,否则返回False,可以用S>T判断S是否是T的真父集。

S={1,2,3} T={1,2,3,4,5} print(S>=T)

或者

S={1,2,3} T={1,2,3,4,5} print(S.issuperset(T))

三、集合类型的操作函数或方法

1.S.add(x):如果数据项x不在集合S中,将x增加到s中。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.add(4) print(S)

2.S.clear():移除S中的所有数据项。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.clear() print(S)

3.S.copy():返回集合S的一个副本。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.copy() print(S)

4.S.pop():随机返回集合中S的一个元素,如果S为空,产生KeyError异常。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) T=S.pop() print(T)

#打印除被pop出的元素以外的所有元素的集合 S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.pop() print(S)

#如果S为空,产生KeyError异常 S=set(()) T=S.pop() print(T)

5.S.discard(x):如果数据项x在集合S中,移除该元素;如果x不在集合S中,不报错。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.discard(‘omg‘) print(S)

#如果x不在集合S中,不报错 S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.discard(‘python‘) print(S)

6.S.remove(x):如果数据项x在集合S中,移除该元素;如果x不在集合S中,产生KeyError异常。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.remove(‘omg‘) print(S)

#如果x不在集合S中,产生KeyError异常 S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.remove(‘python‘) print(S)

7.S.isdisjoint(T):如果集合S与集合T没有相同元素,返回True,否则返回False。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) T=set((4,5,6,‘do‘,‘true‘)) print(S.isdisjoint(T))

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) T=set((1,2,5,6,‘do‘,‘ok‘,‘true‘)) print(S.isdisjoint(T))

8.len(S):返回集合S的元素个数。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(len(S))

9.x in S:如果x是集合S的元素,返回True,否则返回False。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(3 in S)

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(‘python‘ in S)

10.x not in S:如果x不是集合S的元素,返回True,否则返回False。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(3 not in S)

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(‘python‘ not in S)

集合类型主要用于成员关系测试、元素去重和删除数据项。

1.成员关系测试

S={1,2,3,‘omg‘,‘ok‘,‘yes‘} T=‘omg‘ in S print(T)

2.元素去重

S={1,2,3,‘omg‘,‘ok‘,‘yes‘,2,‘omg‘} T=set(S) print(T)

3.删除数据项

#去重同时删除数据项 S={1,2,3,‘omg‘,‘ok‘,‘yes‘,2,‘omg‘} T=set(S) P=tuple(T-{‘ok‘}) print(P)

本文共计1798个文字,预计阅读时间需要8分钟。

Python如何高效运用集合类型进行数据操作?

Python中的集合类型操作与应用

Python中的集合类型是一个包含无序、不重复数据项的集合。它是一个包含0个或多个数据项的集合,元素之间没有顺序,且不包含重复项。集合中的元素类型必须是固定的,例如整数、浮点数等。

集合类型在Python中有着广泛的应用,以下是一些常见操作:

1. 创建集合:使用花括号`{}`或`set()`函数创建集合。

2.添加元素:使用`add()`方法或`|`运算符。

3.删除元素:使用`remove()`方法或`-`运算符。

4.检查元素是否存在:使用`in`或`not in`运算符。

5.集合运算:并集`|`、交集`&`、差集`-`、对称差集`^`。

例如:

python

创建集合my_set={1, 2, 3}

添加元素my_set.add(4)

删除元素my_set.remove(2)

检查元素print(3 in my_set) # 输出:True

集合运算other_set={3, 4, 5}print(my_set | other_set) # 输出:{1, 3, 4, 5}print(my_set & other_set) # 输出:{3}print(my_set - other_set) # 输出:{1, 2}print(my_set ^ other_set) # 输出:{1, 2, 4, 5}

Python集合类型的操作与应用

一、Python集合类型

Python中的集合类型是一个包含0个或多个数据项的无序的、不重复的数据组合,其中,元素类型只能是固定数据类型,如整数、浮点数、字符串、元组等,相反,如列表、字典和集合类型本身都是可变数据类型,因此不能作为集合元素使用。

1.无序性

集合是无序组合,没有索引和位置的概念,不能分片,集合中的元素可以动态增加或删除。集合用大括号“{}”表示。

s={1,2,3,‘a‘,‘b‘,(5,‘c‘)} print(s)

由上例可知,集合元素打印后的顺序和定义顺序可以不同。

2.不重复性

集合元素是独一无二的,使用集合类型可以过滤掉重复元素。set(x)函数用于生成集合,输入任意组合数据类型的参数,返回一个无序不重复的集合。

s=set(‘omg‘) print(s)

s=set((‘human‘,‘animal‘,‘water‘,‘oil‘)) print(s)

二、集合类型的关系操作

1.S-T或S.difference(T):S与T的差集。返回一个新集合,包括在集合S中但不在集合T中的元素。

S={1,2,3,4} T={2,3,4,5} print(S-T)

或者

S={1,2,3,4} T={2,3,4,5} print(S.difference(T))

S={1,2,3,4} T={2,3,4,5} print(T-S)

或者

S={1,2,3,4} T={2,3,4,5} print(T.difference(S))

2.S&T或S.intersection(T):S与T的交集。返回一个新集合,包括同时在集合S和集合T中的元素。

S={1,2,3,4} T={2,3,4,5} print(S&T)

或者

S={1,2,3,4} T={2,3,4,5} print(S.intersection(T))

3.S|T或S.union(T):S与T的并集。返回一个新集合,包括集合S和集合T中的所有元素。

S={1,2,3,4} T={2,3,4,5} print(S|T)

或者

S={1,2,3,4} T={2,3,4,5} print(S.union(T))

4.S^T或S.symmetric_difference(T):S与T的对等差集,包括集合S和集合T中的元素,但不包括同时在其中的元素。

S={1,2,3,4} T={2,3,4,5} print(S^T)

或者

S={1,2,3,4} T={2,3,4,5} print(S.symmetric_difference(T))

5.S<=T或S.issubset(T):如果S与T相同或S是T的子集,返回True,否则返回False,可以用S<T判断S是否是T的真子集。

S={1,2,3} T={1,2,3,4,5} print(S<=T)

或者

Python如何高效运用集合类型进行数据操作?

S={1,2,3} T={1,2,3,4,5} print(S.issubset(T))

6.S>=T或S.issuperset(T):如果S与T相同或S是T的父集,返回True,否则返回False,可以用S>T判断S是否是T的真父集。

S={1,2,3} T={1,2,3,4,5} print(S>=T)

或者

S={1,2,3} T={1,2,3,4,5} print(S.issuperset(T))

三、集合类型的操作函数或方法

1.S.add(x):如果数据项x不在集合S中,将x增加到s中。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.add(4) print(S)

2.S.clear():移除S中的所有数据项。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.clear() print(S)

3.S.copy():返回集合S的一个副本。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.copy() print(S)

4.S.pop():随机返回集合中S的一个元素,如果S为空,产生KeyError异常。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) T=S.pop() print(T)

#打印除被pop出的元素以外的所有元素的集合 S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.pop() print(S)

#如果S为空,产生KeyError异常 S=set(()) T=S.pop() print(T)

5.S.discard(x):如果数据项x在集合S中,移除该元素;如果x不在集合S中,不报错。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.discard(‘omg‘) print(S)

#如果x不在集合S中,不报错 S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.discard(‘python‘) print(S)

6.S.remove(x):如果数据项x在集合S中,移除该元素;如果x不在集合S中,产生KeyError异常。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.remove(‘omg‘) print(S)

#如果x不在集合S中,产生KeyError异常 S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) S.remove(‘python‘) print(S)

7.S.isdisjoint(T):如果集合S与集合T没有相同元素,返回True,否则返回False。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) T=set((4,5,6,‘do‘,‘true‘)) print(S.isdisjoint(T))

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) T=set((1,2,5,6,‘do‘,‘ok‘,‘true‘)) print(S.isdisjoint(T))

8.len(S):返回集合S的元素个数。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(len(S))

9.x in S:如果x是集合S的元素,返回True,否则返回False。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(3 in S)

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(‘python‘ in S)

10.x not in S:如果x不是集合S的元素,返回True,否则返回False。

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(3 not in S)

S=set((1,2,3,‘omg‘,‘ok‘,‘yes‘)) print(‘python‘ not in S)

集合类型主要用于成员关系测试、元素去重和删除数据项。

1.成员关系测试

S={1,2,3,‘omg‘,‘ok‘,‘yes‘} T=‘omg‘ in S print(T)

2.元素去重

S={1,2,3,‘omg‘,‘ok‘,‘yes‘,2,‘omg‘} T=set(S) print(T)

3.删除数据项

#去重同时删除数据项 S={1,2,3,‘omg‘,‘ok‘,‘yes‘,2,‘omg‘} T=set(S) P=tuple(T-{‘ok‘}) print(P)