[ python ] 集合的使用

集合的使用

 

  可变数据类型,他里面的元素必须是不可变的数据类型,无序,不重复。

 

集合的增删查

  集合是没有改这种说法的:

    (1)集合的元素无序的;

    (2)集合的元素为不可变类型

 

 增加

 

add    为集合新增一个元素

1
2
3
4
5
6
set1 = {'hkey', 'xiaofei', 'xixi', 'haha'}
set1.add('vivi')    # 在集合中新增一个元素
print(set1)
 
# 执行结果:
# {'xiaofei', 'vivi', 'haha', 'xixi', 'hkey'}

 

update    将字符串的每个元素作为独立的元素添加到集合中

1
2
3
4
5
6
set1 = {'hkey', 'xiaofei', 'xixi', 'haha'}
set1.update('abc'# 将字符串 abc 分别作为三个元素插入到集合中
print(set1)
 
# 执行结果:
# {'c', 'xiaofei', 'xixi', 'hkey', 'a', 'haha', 'b'}

 

删除

pop    随机删除,有返回值

1
2
3
4
5
6
7
8
set1 = {'hkey', 'xiaofei', 'xixi', 'haha'}
 
print(set1.pop())   # 随机删除集合中的元素,并返回该元素
print(set1)
 
# 执行结果:
# hkey
# {'xiaofei', 'xixi', 'haha'}

 

 remove 按元素删除

1
2
3
4
5
6
7
set1 = {'hkey', 'xiaofei', 'xixi', 'haha'}
 
set1.remove('haha') # 按照元素删除
print(set1)
 
# 执行结果:
# {'hkey', 'xixi', 'xiaofei'}

 

 clear 清空列表

1
2
3
4
5
6
7
set1 = {'hkey', 'xiaofei', 'xixi', 'haha'}
 
set1.clear()    # 清空整个集合
print(set1)
 
# 执行结果:
# set()

 

 del 删除整个集合

1
2
3
set1 = {'hkey', 'xiaofei', 'xixi', 'haha'}
 
del set1

 

集合没有修改:1. 无序的;2. 不可变类型

 

查找

集合只能用 for 查看, 集合是可迭代序列

 

 

集合运算

     集合运算功能包括:
        1. 消除重复元素;
        2. 关系测试

 

交集:& 和 并集:|

 

1
2
3
4
5
6
7
8
9
10
11
12
set1 = {1, 2, 3}
set2 = {2, 3, 4}
 
print(set1 & set2)  # 计算交集
 
# 执行结果:
# {2, 3}
 
print(set1 | set2)  # 计算并集
 
# 执行结果:
# {1, 2, 3, 4}  # 集合中的元素是不可重复的

 

 反交集: ^  就是除了交集以外元素的集合

1
2
3
4
5
6
7
set1 = {1, 2, 3}
set2 = {2, 3, 4}
 
print(set1 ^ set2)  # 反交集
 
# 执行结果:
# {1, 4}

 

 差集:-  set1 - set2 : set1 而 set2 没有的元素的集合

1
2
3
4
5
6
7
set1 = {1, 2, 3, 4}
set2 = {2, 3, 4, 7}
 
print(set1 - set2)
 
# 执行结果:
# {1}

 

frozenset() 将集合可变类型转换为不可变类型;

1
2
3
4
5
6
7
8
set1 = {1, 2, 3, 4}
set2 = {2, 3, 4, 7}
 
s1 = frozenset(set1)
print(s1, type(s1))
 
# 执行结果:
# frozenset({1, 2, 3, 4}) <class 'frozenset'>

 

本文作者:hukey

本文链接:https://www.cnblogs.com/hukey/p/9668470.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   hukey  阅读(808)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起
  1. 1 彩虹 Jay
彩虹 - Jay
00:00 / 00:00
An audio error has occurred.

彩虹 + 轨迹 (Live) - 周杰伦 (Jay Chou)

彩虹

词:周杰伦

曲:周杰伦

哪里有彩虹告诉我

哪里有彩虹告诉我

能不能把我的愿望还给我

能不能把我的愿望还给我

为什么天这么安静

为什么天这么安静

所有的云都跑到我这里

有没有口罩一个给我

有没有口罩一个给我

释怀说了太多就成真不了

释怀说了太多就成真不了

也许时间是一种解药

也许时间是一种解药

也是我现在正服下的毒药

也是我现在正服下的毒药

看不见你的笑 我怎么睡得着

看不见你的笑 我怎么睡得着

你的声音这么近我却抱不到

你的声音这么近我却抱不到

没有地球太阳还是会绕

没有地球太阳还是会绕

没有理由我也能自己走

没有理由我也能自己走

你要离开 我知道很简单

你要离开 我知道很简单

你说依赖 是我们的阻碍

你说依赖 是我们的阻碍

就算放开 但能不能别没收我的爱

就算放开 但能不能别没收我的爱

当作我最后才明白

当作我最后才明白

看不见你的笑 要我怎么睡得着

看不见你的笑 要我怎么睡得着

你的声音这么近我却抱不到

没有地球太阳还是会绕 会绕

没有理由我也能自己走掉

释怀说了太多就成真不了

也许时间是一种解药 解药

也是我现在正服下的毒药

轨迹

词:黄俊郎

曲:周杰伦

我会发着呆然后忘记你

接着紧紧闭上眼

想着哪一天 会有人代替

想着哪一天 会有人代替

让我不再想念你

我会发着呆 然后微微笑

我会发着呆 然后微微笑

接着紧紧闭上眼

又想了一遍 你温柔的脸

又想了一遍 你温柔的脸

在我忘记之前