美文网首页
Python -- 字典dict

Python -- 字典dict

作者: 墨凌风起 | 来源:发表于2020-05-09 20:55 被阅读0次

字典 dict
1.key 存放在Stack栈中,value放在Heap堆
2.dict.keys() :获取所有key
3.dict.values() :获取所有值
4.字典内存放的是键值对,用{}表示
5.键是唯一的,值不必。值可以是任何的Python对象,键必须不可变
6.键不允许出现两次
7.键必须不可变,所以可以用数字,字符串,元组充当,列表不行
'''

创建

dic1 = {"alice":'1234',"brth":"34ed","cat":23,45:65,('dog','pig'):'animal'}

访问

print(dic1["alice"])

增加键值对

dic1['age'] = 8
print(dic1)

修改

dic1['cat'] = "tom"
print(dic1)

删除

del dic1['brth'] #删除某个键值对
print(dic1)

复制

dic2 = dic1.copy()
print(dic2)

删除字典

del dic2

清空字典

dic2.clear()

print(dic2)

len(dic1) 字典键值对的个数

print(len(dic1))

str(dic1) 输出字典,以可打印的字符串表示

print(str(dic1))

type(variable) 返回对象类型

print(type(dic1))

fromkeys(seq,val)创建新字典,以序列seq中元素作字典的key,val为字典所有键对应的值的初始值

print(dic1.fromkeys(['bag','pen','nife',34,53],[12,'kl']))

get(key,default=None)返回指定键的值,值不在字典返回default值

print(dic1.get('cat',"None"))
print(dic1.get('pyth',"None"))

in key是否存在

print('cat' in dic1)
print('mer' in dic1)

以列表返回可遍历的元组数组

print(dic1.items()) #dict_items([('alice', '1234'), ('cat', 'tom'), (45, 65), (('dog', 'pig'), 'animal'), ('age', 8)])

返回所有的key 可用list()转换为数组

print(dic1.keys()) #dict_keys(['alice', 'cat', 45, ('dog', 'pig'), 'age'])
print(list(dic1.keys())) #['alice', 'cat', 45, ('dog', 'pig'), 'age']

setdefault(key,default=None)类似get(),键不存在,则添加键并设置值为default

dic1.setdefault('pee','modul')
print(dic1) #{'alice': '1234', 'cat': 'tom', 45: 65, ('dog', 'pig'): 'animal', 'age': 8, 'pee': 'modul'}
print(dic1.setdefault('pee','modul')) #modul
dic1.setdefault('cat','jerry')
print(dic1) #{'alice': '1234', 'cat': 'tom', 45: 65, ('dog', 'pig'): 'animal', 'age': 8, 'pee': 'modul'}
print(dic1.setdefault('cat','jerry')) #tom

把dic2的ke/value更新到dic1中

dic1.update(dic2)
print("******.{0}".format(dic1))

返回所有的value 可用list()转换为数组

print(dic1.values()) #dict_values(['1234', 'tom', 65, 'animal', 8, 'modul'])

pop(key[,default])删除指定key对应的值,返回被删除的值,key必须给出,否则返回default值

print(dic1.pop('cat')) # tom
print(dic1.pop('age',"None")) # 8

print(dic1.pop('cad')) #KeyError: 'cad'

print(dic1.pop('cad',"CSSS")) #CSSS

删除字典最后的键值对,并返回

print(dic1.popitem()) #('pee', 'modul')
print(dic1) #{'alice': '1234', 45: 65, ('dog', 'pig'): 'animal'}

'''

相关文章

网友评论

      本文标题:Python -- 字典dict

      本文链接:https://www.haomeiwen.com/subject/hnblnhtx.html