小白入门Python之集合操作

Posted bfhonor

tags:

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

一. 创建集合

  • 创建集合使用{}set(), 但是如果要创建空集合只能使用set(),因为{}用来创建空字典。
# 1.创建有数据的集合
s1 = {10, 20, 30, 40, 50}
print(s1)  # {50, 20, 40, 10, 30}

s2 = {10, 30, 20, 40, 30, 20}
print(s2)  # {40, 10, 20, 30}

s3 = set('abcdefg')
print(s3)  # {'a', 'b', 'd', 'e', 'f', 'g', 'c'}

# 2.创建空集合:set()
s4 = set()
print(s4)  # set()
print(type(s4))  # <class 'set'>

s5 = {}
print(type(s5))  # <class 'dict'>

特点:

  1. 集合可以去掉重复数据;
  2. 集合数据是无序的,故不支持下标

二. 集合常见操作方法

(一)增加数据

  • add()
s1 = {10, 20}
# 1.集合是可变类型
s1.add(100)
print(s1)  # {100, 10, 20}

# 2.集合有去重功能,如果追加的数据是集合已有数据,则什么事情都不做
s1.add(100)
print(s1)

# s1.add([10, 20, 30])  # 追加数据序列会产生报错,只能追加单一数据
# print(s1)

因为集合有去重功能,所以,当向集合内追加的数据是当前集合已有数据的话,则不进行任何操作。

  • update(), 追加的数据是序列。
s1 = {10, 20}
s1.update([10, 20, 30, 40, 50])
print(s1)  # {40, 10, 50, 20, 30}
s1.update('abc')
print(s1)  # {'c', 'b', 40, 10, 'a', 50, 20, 30}

(二)删除数据

  • remove(),删除集合中的指定数据,如果数据不存在则报错。
s1 = {10, 20, 30, 40, 50}
# remove():删除集合中的指定数据,如果数据不存在则报错。

s1.remove(10)
print(s1)  # {50, 20, 40, 30}

# s1.remove(10)
# print(s1)  # 报错
  • discard(),删除集合中的指定数据,如果数据不存在也不会报错。
s1 = {10, 20, 30, 40, 50}
# discard():删除集合中的指定数据,如果数据不存在也不会报错。

s1.discard(10)
print(s1)  # {50, 20, 40, 30}

s1.discard(10)
print(s1)  # {50, 20, 40, 30}
  • pop(),随机删除集合中的某个数据,并返回这个数据。
s1 = {10, 20, 30, 40, 50}
# pop():随机删除集合中的某个数据,并返回这个数据。

del_num = s1.pop()
print(del_num)  # 50

print(s1)  # {20, 40, 10, 30}

(三) 查找数据

  • in:判断数据在集合序列
  • not in:判断数据不在集合序列
s1 = {10, 20, 30, 40, 50}

# in 或 not in 判断数据10是否存在
print(10 in s1)  # True
print(10 not in s1)  # False

以上是关于小白入门Python之集合操作的主要内容,如果未能解决你的问题,请参考以下文章

1.6小白学python入门基础-----元祖,字典,集合

Linux之小白入门二

小白入门之搭建python编程环境,atom和网易云安装

python之小白入门起飞篇

Python自学从入门到就业之函数基础(小白必看)

Java小白入门200例109之Java Map集合详解