封装和解构集合字典的简介

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了封装和解构集合字典的简介相关的知识,希望对你有一定的参考价值。

封装和解构

封装
    将多个值使用逗号分割,组合在一起
    本质上返回一个元组,只是省略了小括号
    t1 = (1,2)   #定义为元组
    t1 = 1,2    #将1和2封装成元组
解构
    把线性结构的元素解开,并顺序的值赋给其他变量
    左边接纳的变量数要和右边解开的元素个数一致

集合set
set 翻译为集合 collection 翻译为集合类型,是一个大概念
set 是可变的、无序的、不重复的元素集合
set可以迭代 , 元素不可以索引
set 的元素要求必须可hash

不可hash的类型有: list、set、bytearray、dict
可hash的类型有 :int、tuple、bytes,string、none、bool、complex

set修改 ( 要么删除,要么加入新的元素)

增加
add(elem)        update(others) 
 删除
remove(elme)    discard(elem)    pop()  -->item        clear()     

集合

并集  union(others)       |   ;  update(others)     |=
交集 intersecton(others)     &    ;    intersectionupdate(others)    &=
差集  difference(others)    -   ;       differentupdate(others)   -=
对称差集 symmetricdifferece(other)    ^   ;    symmetricdifferenceupdate(other)  ^=
issubset(other) 、<=   判断当前集合是否是另一个集合的子集
set1  <  set2       判断set1是否是set2的真子集
issuperse(other)  、 >=   判断当前集合是否是other的超集
set1  >  set2       判断set1是否是set2的真超集
isdisjoint(other)   当前集合和另一个集合没有交集,如果没有交集返回True*

字典dict

key - value 键值对的数据的集合
可变的 、无序的、key不重复

定义、初始化

d = {}或者 d = dict()
dict(kwargs)  使用name = value 对初始化一个字典
    dict(iterable,kwarg)  使用可迭代对象和name = value 对构造字典,不过可迭代对象必须是一个二元结构  d = dict(((1,‘a‘),(2,‘b‘)))  或者 d = (2,‘b‘])([1,‘a‘],[)
dict(mapping,kwarg)使用一个字典构造另一个字典
d = {‘a‘:10,‘b‘:20,‘c‘:None,‘d‘:[1,2,3]
类方法 d = dict.fromkeys(iterable,value)

字典元素的访问

d[key]    
get(key[,default])
setdefault(key[,default]) 

字典增加和修改

d[key] = value 将key对应的值该为value,key不存在添加新的Kv对
update([other])->None   使用另一个字典的Kv对更新本字典,key不存在就添加,key存在覆盖key对应的值,就地修改

字典删除

pop(key[,defalut])  
popitem()  移除并返回任意一个键值对,字典为empty,抛出KeyError异常
clear()   清空字典
del语句       实际上删除的是名称(一个对象的引用)而不是对象

字典遍历

for ... in dict:
遍历key
遍历value
遍历item,即kv对

以上是关于封装和解构集合字典的简介的主要内容,如果未能解决你的问题,请参考以下文章

8.字典dict和解构-封装

函数参数解构

Python 第三课

python 人生苦短,我学Python

JavaScript实现集合与字典

Redis五种数据结构及常用操作指令Redis在JAVA中如何封装使用