Python数据分析实战4.3-字典的元素访问及遍历【python】

【课程4.3】 字典的元素访问及遍历

如何读取字典?

1.字典的元素访问

dic = {'a':1, "b":2, "c":3}
print(dic['a'])
#print(dic[1])  # 不能用序列的索引方式
# 字典里面也就同样的意思,但字典没有顺序,以key来作为指向,所以指向的key必须存在

poi = {'name':'shop', 'city':'shanghai', 'information':{'address':'somewhere', 'num':66663333}}
print(poi['information']['address'])
# 对于嵌套字典,输出嵌套内容,通过重复指向来输出

print(poi.get('name'))
print(poi.get('type',print('nothing')))
# .get(key)方法:直接查看key的value,如果没有相应key则返回None,添加print参数可以多返回一个值

print(poi.keys(),type(poi.keys()))
print(list(poi.keys()))
# .keys()方法:输出字典所有key,注意这里的输出内容格式是视图,可以用list()得到key的列表,类似range()

print(poi.values(),type(poi.values()))
print(list(poi.values()))
# .values()方法:输出字典所有values,原理同.keys()方法

print(poi.items(),type(poi.items()))
print(list(poi.items()))
# .items()方法:输出字典所有items(元素),原理同.keys()方法
-----------------------------------------------------------------------

somewhere
shop
nothing
None
dict_keys(['information', 'name', 'city']) <class 'dict_keys'>
['information', 'name', 'city']
dict_values([{'num': 66663333, 'address': 'somewhere'}, 'shop', 'shanghai']) <class 'dict_values'>
[{'num': 66663333, 'address': 'somewhere'}, 'shop', 'shanghai']
dict_items([('information', {'num': 66663333, 'address': 'somewhere'}), ('name', 'shop'), ('city', 'shanghai')]) <class 'dict_items'>
[('information', {'num': 66663333, 'address': 'somewhere'}), ('name', 'shop'), ('city', 'shanghai')]

2.字典的元素遍历

poi = {'name':'shop', 'city':'shanghai', 'information':{'address':'somewhere', 'num':66663333}}
for key in poi.keys():
    print(key)
print('-------')

for value in poi.values():
    print(value)
print('-------')

for (k,v) in poi.items():
    print('key为 %s, value为 %s' %(k,v))
print('-------')  
# for函数遍历
-----------------------------------------------------------------------
information
name
city
-------
{'num': 66663333, 'address': 'somewhere'}
shop
shanghai
-------
key为 information, value为 {'num': 66663333, 'address': 'somewhere'}
key为 name, value为 shop
key为 city, value为 shanghai
-------

小作业
① dict.keys()生成的是不是列表?
② 如何判断一个value是否存在于字典中?

在这里插入图片描述

发布了36 篇原创文章 · 获赞 17 · 访问量 6274

猜你喜欢

转载自blog.csdn.net/qq_39248307/article/details/105469043