python基础数据类型一(集合)

python基础数据类型一(集合),第1张

概述集合 集合在python中也是一个数据类型,我们只用它自带的特性,其余的 *** 作很少使用 集合在Pyhton中的关键字是set,也是以{}的形式展示 只不过集合是一个没有值得字典,为什么这么说呢?? 因为集合中的元素要求是不可变的并且还是唯一的,我们就利用它是唯一来做去重 lst = [1,3,4,112,23,1,3,1,41,12,3,1]print(set(lst)) # 这样就没有重复的元 集合

集合在python中也是一个数据类型,我们只用它自带的特性,其余的 *** 作很少使用

集合在Pyhton中的关键字是set,也是以{}的形式展示 只不过集合是一个没有值得字典,为什么这么说呢??

因为集合中的元素要求是不可变的并且还是唯一的,我们就利用它是唯一来做去重

lst = [1,3,4,112,23,1,41,12,1]print(set(lst))  # 这样就没有重复的元素出现了,我们在将集合抓换成列表List(set(lst)) # 这样就把没有重复的集合转成列表了print(List(set(lst)))

集合是无序,可变的数据类型,说到可变我们就知道集合是能够增加和删除等 *** 作的,我们来看看怎么 *** 作
集合定义方式:

set("12345"){1,2,5} # 将字符串进行迭代添加
set集合增删改查

增加

s = {"刘嘉玲",'关之琳',"王祖贤"}s.add("郑裕玲")print(s)s.add("郑裕玲") # 重复的内容不会被添加到set集合中print(s)s = {"刘嘉玲","王祖贤"}s.update("麻花藤") # 迭代更新print(s)s.update(["张曼?","李若彤","李若彤"])print(s)

删除  

s = {"刘嘉玲","王祖贤","张曼?","李若彤"}item = s.pop() # 随机d出?个.print(s)print(item)s.remove("关之琳") # 直接删除元素# s.remove("??疼") # 不存在这个元素. 删除会报错print(s)s.clear() # 清空set集合.需要注意的是set集合如果是空的. 打印出来是set() 因为要和dict区分的.print(s) # set()

修改

# set集合中的数据没有索引. 也没有办法去定位?个元素. 所以没有办法进?直接修改.# 我们可以采?先删除后添加的?式来完成修改 *** 作s = {"刘嘉玲","李若彤"}# 把刘嘉玲改成赵本?s.remove("刘嘉玲")s.add("赵本?")print(s)

查询  

# set是?个可迭代对象. 所以可以进?for循环for el in s: print(el)

常? *** 作  

s1 = {"刘能","赵四","???"}s2 = {"刘科?","冯乡?","???"}# 交集# 两个集合中的共有元素print(s1 & s2) # {'???'}print(s1.intersection(s2)) # {'???'}# 并集print(s1 | s2) # {'刘科?','冯乡?','赵四','???','刘能'}print(s1.union(s2)) # {'刘科?','刘能'}# 差集print(s1 - s2) # {'赵四','刘能'} 得到第?个中单独存在的print(s1.difference(s2)) # {'赵四','刘能'}# 反交集print(s1 ^ s2) # 两个集合中单独存在的数据 {'冯乡?','刘能','刘科?','赵四'}print(s1.symmetric_difference(s2)) # {'冯乡?','赵四'}s1 = {"刘能","赵四"}s2 = {"刘能","???"}# ?集print(s1 < s2) # set1是set2的?集吗? Trueprint(s1.issubset(s2))# 超集print(s1 > s2) # set1是set2的超集吗? Falseprint(s1.issuperset(s2))

set集合本?是可以发?改变的. 是不可hash的. 我们可以使?froZenset来保存数据. froZenset是不可变的. 也就是?个可哈希的数据类型

s = froZenset(["赵本?","刘能","???","长桂"])dic = {s:'123'} # 可以正常使?了print(dic)

集合其他 *** 作

```python & #交集 | #并集 - #差集 ^ #对称差集 > #父集 < #子集 forZenset()#冻结集合   注意:(列表去重) # lst = [1,45,2345,] # print(List(set(lst))) ```

最后我们对这些数据类型进行一个总结,我们按照有序,无序,可变,不可变,取值方式来总结

有序: 数字 字符串 列表 元组 无序: 字典 集合 可变数据类型: 列表 字典 集合 不可变数据类型: 字符串 数字 元组 取值顺序: 直接取值 — 数字,布尔值,集合 顺序取值(索引) — 列表,元组,字符串 通过键取值 — 字典 类型转换
元组 => 列表   List(tuple)列表 => 元组   tuple(List)列表 => 字符串 str.join(List)字符串 => 列表 str.split()转换成False的数据:0,'',None,[],(),{},set() 都是False
总结

以上是内存溢出为你收集整理的python基础数据类型一(集合)全部内容,希望文章能够帮你解决python基础数据类型一(集合)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1190814.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存