字典

字典

Python 使用 {} 或者 dict() 来创建一个空的字典:

插入键值

a{}
a["one"] = "this is number 1"
a["two"] = "this is number 2"
a
{'one': 'this is number 1', 'two': 'this is number 2'}

字典没有顺序

当我们 print 一个字典时,Python并不一定按照插入键值的先后顺序进行显示,因为字典中的键本身不一定是有序的。
因此,Python中不能用支持用数字索引按顺序查看字典中的值,而且数字本身也有可能成为键值,这样会引起混淆

键必须是不可变的类型

出于hash的目的,Python中要求这些键值对的键必须是不可变的,而值可以是任意的Python对象。

a={}
a['apple'] = ['a','b','c','d']
a['banana'] = ['x','y','z']
a

输出

{'apple':['a',
'b',
'c'],
'banana':['x',
'y',
'z']}

使用 dict 初始化字典

input

b = dict([
('apple',123),
('banana',456),
('pear',789)
])
b

output

{'apple':123,'banana':456,'pear':789}

型适合做键的类型

在不可变类型中,整数和字符串是字典中最常用的类型;而浮点数通常不推荐用来做键,
观察data的值就会发现,这个错误是由浮点数的精度问题所引起的:

有时候,也可以使用元组作为键值,
元组是有序的,因此 ('apple', 'banana') 和 ('banana', 'apple') 是两个不同的键:

cc={}
cc[('apple','banana')]=100
cc[('banana','apple')]=200
print cc['apple','banana']
print cc['banana','apple']
100
200

字典方法

get 方法

返回字典中键 key 对应的值,如果没有这个键,返回 default 指定的值(默认是 None )

pop 方法删除元素

a.pop('apple','banana')
100

update

person = {}
person ['id'] = 12
person ['first'] = "jame"
person ['last'] = "Learb"
print person
{'id':12,'first':'jame','last':'Learb'}

把first改成Bob,id改成44

dd{'id'= 44,'first'="Bob"}
person.update(dd)
print dd
{'id':44,'first':'Bob','last':'Learb'}

in查询字典中是否有该键

'first' in person
Ture

keys 方法,values 方法和items 方法

key返回所有的键组成的列表

{'id','first','last'}

values返回所有的值
items返回一个由所有键值对元组组成的列表;

posted @   辛宣  阅读(49)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?
点击右上角即可分享
微信分享提示