字典

在python中,字典是一系列键-值对,每个键都与一个值相关联,可使用键来访问相关联的值。与键相关联的值可以是数字、字符串、列表乃至字典,即可将任何python对象用在字典中的值。

在python中,字典用放在花括号{}中的一系列键-值对表示。

alien_o = {'color':'green','points':'5'}

键值对是两个相关联的值,指定键时,将返回与之相关联的值。键与值之间用冒号隔开,而键值对之间用逗号分割。在字典中,想存储多少个键值对都可以。

最简单的是只有一个键值对

alien_o = {'color':'green'}

要获取与键相关联的值,可依次指定字点明和放在方括号中的键,如下所示:

alien_o = {'color':'green'}

print(alien_o['color'])#获取键‘color’的值

green

还可打印出消息

alien_o = {'color':'green','points':'5'}

new = alien_o['points']#将键‘points’的值赋给变量new

print("You just earned " + str(new) + " points! ")#打印出信息

You just earned 5 points!

字典更新

字典的更新很简单只需要将值赋给一个键即可,若指定的键已经存在,python就会修改与之相关联的值

birds = {}#空字典

birds['snow goose']=33

birds['eagle']= 44

birds

{'eagle': 44, 'snow goose': 33}

birds['eagle']=99#修改键‘eagle’的值为99

birds

{'eagle': 99, 'snow goose': 33}

字典循环

与列表一样,同样用for语句将字典中的键逐个赋值给循环变量

alien_o = {'color':'green','points':'5','value':'22'}

for i in alien_o:

print(i,alien_o[i])

##遍历所有的键值对

color green

points 5

value 22

alien_o = {'color':'green','points':'5','value':'22'}

for i in alien_o.keys():

print(i)

##遍历字典中所有的键

color

points

value

alien_o = {'color':'green','points':'5','value':'22'}

for i in alien_o.values():

print(i)

##遍历字典中所有的值

green

5

22

字典嵌套

字典列表

alien_0={'color':'green','points':'5'}

alien_1={'color':'yellow','points':'10'}

alien_2={'color':'blue','points':'15'}

alients=[alien_0,alien_1,alien_2]

for i in alients:

print(i)

{'color': 'green', 'points': '5'}

{'color': 'yellow', 'points': '10'}

{'color': 'blue', 'points': '15'}

在字典中存储列表

在下面的示例中,存储了披萨的两方面信息:外皮包装和配料列表。其中的配料列表是一个与键'stoppings'相关联的值。要访问列表,我们使用字典名和键'stoppings',就像访问字典中的其他值一样。

pizza = {'crust':'thick',

'toppings':['mushing','extra cheese'],

}

print("You ordered a " + pizza['crust'] + "-ceust pizza" + "with the following toppings:")

for topping in pizza['toppings']:

print("\t" + topping)

You ordered a thick-ceust pizzawith the following toppings:

mushing

extra cheese

在字典中存储字典

在下面的示例中,如果有多个网站用户,每个都有独特的用户名,可在字典中将用户名作为键,然后将每位用户的信息存储在一个字典中,并将该字典作为与用户名相关联的值

users = {

'aeinstein':{

'first':'albert',

'last':'einstein',

'location':'princeton',

},

'mcurie':{

'first':'marie',

'last':'curie',

'location':'paris',

},

}##两个用户名,'aeinstein'和 'mcurie',然后又将每位用户的信息存储在字典中,并将该字典作为用户名相关联的值

for username,user_info in users.items():

print("\nUsersname: " + username)

full_name = user_info['first'] + user_info['last']

location = user_info['location']

print("\tFull name: " + full_name)

print("\tlocation: " + location)

Usersname: mcurie

Full name: mariecurie

location: paris

Usersname: aeinstein

Full name: alberteinstein

location: princeton

字典方法

方法

目的

范例

结果

clear

清空字典内容

d.clear()

返回None,但d此时已经是空的了

get

返回指定键所关联的值;如果指定键不存在,则返回默认值

d.get('x',99)

若d中有‘x’,返回d['x'];否则返回99

keys

以列表的形式返回字典所有的键

如上例

如上例

items

以列表形式返回字典所有的值

如上例

如上例