教你python中什么是集合(一)

今天马哥教育要跟大家分享的文章是教你Python中什么是集合(一)?熟悉Python的小伙伴们都知道集合是通过set(iterable)方法创建,Python入门新手和正Python学习的小伙伴快来看一看吧,希望能够对大家有所帮助 !

1、创建集合

集合的创建不同于前两种数据结构。

集合通过set(iterable)方法创建,参数iterable为可迭代对象。

示例代码:

s1 = set('好好学习天天想上')  # 将字符串分解为单个字符,作为集合的元素创建集合
s2 = set(('好好', '学习', '天天', '想上'))  # 将元组分解为单个元素,作为集合元素创建集合
s3 = set(['好好', '学习', '天天', '想上'])  # 将列表分解为单个元素,作为集合元素创建集合


print (s1)  # 显示输出结果为:{'好', '习', '上', '天', '想', '学'}
print (s2)  # 显示输出结果为:{'好好', '想上', '学习', '天天'}
print (s3)  # 显示输出结果为:{'好好', '想上', '学习', '天天'}

通过上方示例,大家能够看出:

1)集合可以通过可迭代对象(字符串、元组、列表等)进行创建;

2)集合中的元素不可重复;

3)集合中的元素无序排列。

2、添加元素

集合添加元素的方法有两种。

添加单个元素:使用add(element)函数,参数element为集合允许添加的元素(例如数字、字符串、元组等)。

添加多个元素:使用update(iterable)函数,参数iterable为可迭代对象。

示例代码:

# 创建集合
s1 = set('123')
s2 = set('123')
s3 = set('abc')

# 添加单个元素
s1.add('4')

# 添加多个元素
s2.update(['4','5','6'])  # 添加列表到集合,列表元素会被分解为单个元素后添加到集合
s3.update('de')  # 添加字符串到集合,字符串会被分解为单个元素后添加到集合

# 显示输出
print (s1)  # 显示输出结果为:{'4', '3', '1', '2'}
print (s2)  # 显示输出结果为:{'4', '2', '6', '5', '3', '1'}
print (s3)  # 显示输出结果为:{'c', 'b', 'd', 'e', 'a'}

#注意:因为集合元素是无序的,大家在测试以上代码时,显示输出的结果与上方结果,可能在顺序上不一致。

3、删除元素

集合删除元素的方法有两种。

第一种:使用remove(element)方法删除指定元素,参数element为需要删除的元素。

第二种:使用discard(element)方法删除指定元素,参数element为需要删除的元素。

示例代码:

# 创建集合
s1 = set(['Python','Java','C','C++','C#'])
s2 = set(['Python','Java','C','C++','C#'])

# 删除元素
s1.remove('C++')
s2.discard('C++')

# 显示输出
print (s1)  # 显示输出结果为:{'C', 'Python', 'Java', 'C#'}
print (s2)  # 显示输出结果为:{'C', 'Python', 'Java', 'C#'}

从上方示例中,大家能够看到remove()和discard()的作用是一样的。

不过,这两个方法是有区别的。

当集合中不存在这两个方法参数中填入的元素时,remove()方法会抛出异常,而discard()方法则没有任何影响。

4、取出元素

集合支持pop()方法取出元素。

示例代码:

# 创建集合
s = set(['Python','Java','C','C++','C#'])

# 显示输出
print (s)  # 显示输出结果为:{'Python', 'C#', 'C++', 'Java', 'C'}
print (s.pop()) # 取出集合元素,显示输出结果为:Python
print (s)  # 显示输出结果为:{'C#', 'C++', 'Java', 'C'}

5、清空集合

集合支持clear()方法进行清空。

示例代码:

# 创建集合 s = set(['Python','Java','C','C++','C#'])
# 清空集合 s.clear()
# 显示输出 print (s)
# 显示输出结果为:set()

以上就是马哥教育今天为大家分享的关于教你Python中什么是集合(一)的文章,希望本篇文章能够对正在从事Python相关工作的小伙伴们有所帮助,想要了解更多相关知识记得关注马哥教育官网,每天都会有大量优质内容与大家分享!

相关新闻

历经多年发展,已成为国内好评如潮的Linux云计算运维、SRE、Devops、网络安全、云原生、Go、Python开发专业人才培训机构!