python编程基础知识—字典

字典

  • 在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 以列表形式返回字典所有的值 如上例 如上例
posted @ 2017-08-16 20:39  LouieZhang  阅读(363)  评论(0编辑  收藏  举报