标签:asd key 返回值 lis 根据 逗号 空间 clear 结果
字典 ---- python中的数据类型之一
唯一 一种{} ,键值对的数据
dict 字典
字典
1、存储大量数据 比列表存储的数据要大
2、将数据和数据之间进行关联
定义
dic = {"键":"值"}
dic = {"岳新力":["开车","唱","跳"],"孙一帆":9,25:"海绵",True:"秀",(1,2,3):"大圣",}
print(dic[25]) 输出结果 海绵
print(dic[True]) 结果“秀”
{"键":"值"} # 通过键可以准确的找到值
哈希:
#可变数据类型就不可哈希 可变数据类型有list, dict, set 可变就像老师说的 盖房子,不需要开辟新的空间,直接在所在区域内增删改查,不可变数据类型可哈希,不可变数据类型:int tuple str bool 这些若需要增删改查,需开辟新空间
字典的键:不可变数据类型(可哈希),唯一(字典中键只能存在一个)
字典的值:任意
添加 (键=值的形式)
dic = {"key": 1 } #dic ["键"] = ”值“
dic["alex"] =22 **#通过 键值对 的添加**
print(dic) 输出结果 {"key":1,"alex":22}
setdefault (存在不添加,不存在添加)
dic.setdefault("meet",18) # 参数1:键 参数2 :值 **dic.setdefault(键,值)**
dic.setdefault("key",18) #字典中键不存在时添加,若存在时不进行添加
###### setdefault: 1,查找, 2添加
###### 1.先通过键去字典中查找,返回的值是None,才会执行第二步
###### 2.将键和值添加到字典中
dic = {"key":1,"das":"asds"} # 键值对 以逗号分隔
dic.clear() #清空
print (dic) 输出结果 dic ={}
#dic.pop(“键”) 根据键的名删除该键的键值对
dic = {'剑圣':'易','哈啥给':'剑豪','大宝剑':'盖伦'}
s = dic.pop('哈啥给') # pop删除有返回值,返回的是被删的值
print(s) #剑豪
print(dic) # 打印删除后的字典 {'剑圣': '易', '大宝剑': '盖伦'}
dis.popitem() 随机删除 Python3默认删除最后一位
4.第四种方式 del
dic={1:2}
del dic #删除整个字典
print(dic) #报错,错误是dic未定义,说明del全部删除,直接从内存将这个字典删除
del dic["键"] 指定删除
dic={1:2,"xx":"xx"}
del dic["xx"]
print(dic) {1:2} 这种形式跟pop差不多
字典所有的操作都是针对键
dic["键"] = "值" # 暴力增加 当键在字典中存在时就修改,不存在时就是增加
# dic = {"key":1,"dsb":"alex"}
# dic["dsb"] = "Alex" # 修改 存在 把值替换
# dic["ss"] = "Alex" # 增加 不存在 就是增加
# print(dic)
dic.update(字典) # update中的字典级别高于前面的字典
dic.update({"键":值 ,"键":值}) # 两个字典合并
dic = {"key":1,"dsb":"alex"}
dic.update({"key":2,"meet":28}) # 两个字典合并
print(dic)
输出结果:{'meet': 28, 'dsb': 'alex', 'key': 2}
说明将2个字典合并,不仅可以修改原来dic内容,也可以添加新内容
dic = {"key":1,"dsb":"zzz"}
!!!!print(dic["sads"]) 结果 报错 #通过键查找值,键不存在时报错
print(dic.keys()) # 获取字典中所有的键
print(dic.values()) #获取字典中所有的值
lst = dic.keys() #高仿列表
for i in lst: # 高仿列表可以迭代#
例子 :
dic = {"key":1,"dsb":"alex"}
dd = dic.keys() # 高仿列表
print(dd) #dict_keys(['key', 'dsb'])
for i in lst: # 高仿列表可以迭代
print(i)
#dsb
#key 循环输出的是 “键”
dic = {"key":1,"key1":2}
dd = list(dic.items())
print(dd) 输出结果: [('key1', 2), ('key', 1)] 形成高仿列表
print(dd[0][1]) 输出结果为2 高仿列表能用列表的索引,[0],[1] 显示的是2
dd = list(dic)
print(dd) 输出结果:['key1', 'key'] 让字典定义列表,真正的列表只输出“键”
?
dic = {"key":1,"key1":2,"key2":3,"key3":4}
for i in dic.items(): 高仿列表dic.items()
print(i[0],i[1]) 输出结果
key 1
key2 3
key1 2
key3 4
解构例子
解构其实就是按照索引分散赋值
# a,b = (10,20)
# print(a) 10
# print(b) 20
# a,b = "你好"
# print(a) 你
# print(b) 好
# a,b,c = 10,20,30
# print(a) 10
# print(b) 20
a,b,c,d,*e = [1,2,3,4,5,6,7] # * 聚合
#print(a,b,e)
输出结果:1,2,[3,4,5,6,7]
dic = {"key1":1,"key2":2,"key3":4}
for i in dic.items():
k,v = i
print(k,v) [("key",1),("key2",2)]
# keys 获取的所有的键
# values 获取的所有的值
# items 获取的所有的键和值,以元组的形式
标签:asd key 返回值 lis 根据 逗号 空间 clear 结果
原文地址:https://www.cnblogs.com/zzsy/p/12215517.html