1.字典dictionary:键值对形式的储存方式集合在Python中被称为字典,类似于java中的各种Map。字典中表项的排列顺序不是固定的,不能向列表那样进行切片。在字典里整数也可以作为键。
>>> person = {'name':'Lee','age':25,'sex':'man',2017:2017} >>> person['age'] 25
>>> person[2017] 2017
2.keys()、values()和items()方法:返回的值不是真正的列表,不能被更改,比如items取出来的会是一个元组,可用于for循环来查找字典中的相应的值。
>>> person = {'name':'Lee','age':'25','sex':'man'} >>> for k in person.keys(): print(k) sex name age >>> for v in person.values(): print(v) man Lee 25 >>> for i in person.items(): print(i) ('sex', 'man') ('name', 'Lee') ('age', '25')
3.检查时候在字典中:
>>> person = {'name':'Lee','age':'25','sex':'man'} >>> 'name' in person.keys() True >>> 'Lee' not in person.values() False
4.get()方法:有两个参数,一个是要取得其值的键,另一个是该键不存在时,返回的备用值,避免报错。
>>> person = {'name':'Lee','age':'25','sex':'man'} >>> person.get('names','字典中没有该字段') '字典中没有该字段'
5.setdefault()方法:有两个参数,第一个参数是要检查的键,第二个参数是当该键不存在时要设置的键对应的值。如果查找的键存在,则返回键的值,第二个参数无效;如果键不存在,则创建键和对应的值。
>>> person = {'name':'Lee','age':'25'} >>> person.setdefault('sex','man') 'man' >>> person {'sex': 'man', 'name': 'Lee', 'age': '25'}
setdefault()方法的小用:找出格言中重复的字符数量。
say = 'Nothing is impossible if you put your heart into it.' count = {} for char in say: count.setdefault(char,0) count[char] = count[char] + 1 print(count)
6.嵌套的字典和列表:示例展示。
Apples 7 Cups 3 Cakes 0 Ham Sandwiches 3 Apple Pies 1
这算是用一种建模的方式实现对字典中相应内容的统计。