字典
作者:互联网
字典
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返回一个由所有键值对元组组成的列表;
{('id':44),('first':'Bob'),('last':'Learb')}
标签:apple,banana,person,字典,id,first 来源: https://www.cnblogs.com/xinxuann/p/16163152.html