像列表一样,“字典”是许多值的集合。但不像列表的下标,字典的索引可以使用许多不同数据类型,不只是整数。字典的索引被称为“键”,键及其关联的值称为“键-值”对。
字典中的表项是不排序的。所以不能像列表那样切片。
>>> dict={‘name‘:‘Tom‘,‘age‘:18,‘Color‘:‘white‘}
>>> dict[‘age‘]
18keys()、values()和items()方法
▎3个字典的方法:
keys() 键
values() 值
items() 键-值对
这些方法返回的值不是真正的列表,它们不能被修改。
>>> dict={‘name‘:‘Tom‘,‘age‘:18,‘Color‘:‘white‘}
>>> for k in dict.keys():
... print(k)
...
Color
name
age
>>> for v in dict.values():
... print(v)
...
white
Tom
18
>>> for k,v in dict.items():
... print(k,v)
...
Color white
name Tom
age 18in和not in
利用in和not in操作符可以检查值是否存在于列表中。
>>> dict={‘name‘:‘Tom‘,‘age‘:18,‘Color‘:‘white‘}
>>> ‘age‘ in dict.keys()
True
>>> ‘age‘ in dict ## 等于“‘age‘ in dict.keys()”
True
>>> ‘Color‘ not in dict.keys()
False
>>> ‘white‘ in dict.values()
Trueget()方法
在访问一个键的值之前,检查该键是否存在于字典中,可以使用get()方法,它有两个参数:要取得其值的键,以及如果该键不存在时,返回的备用值。
>>> dict={‘name‘:‘Tom‘,‘age‘:18,‘Color‘:‘white‘}
>>> ‘My hair is ‘+str(dict.get(‘hair‘,‘BLACK‘))+‘.‘
‘My hair is BLACK.‘setdefault()方法
setdefault()方法为字典中某个键设置一个默认值,当该键没有任何值时使用它。
传递给setdefault()方法的第一个参数,是要检查的键。第二个参数,是如果该键不存在时要设置的值。如果该键确实存在,方法就会返回键的值。
>>> dict={‘name‘:‘Tom‘,‘age‘:18,‘Color‘:‘white‘}
>>> dict.setdefault(‘hair‘,‘black‘)
‘black‘
>>> dict.setdefault(‘age‘,‘20‘)
18
>>> dict
{‘Color‘: ‘white‘, ‘name‘: ‘Tom‘, ‘age‘: 18, ‘hair‘: ‘black‘}漂亮打印
如果程序中导入pprint模块,就可以使用pprint()和pformat()函数,它们将漂亮打印一个字典的字。
如果字典本身包含嵌套的列表或字典,pprint.pprint()函数就特别有用。
如果希望得到漂亮打印的文本作为字符串,而不是显示在屏幕上,那就调用pprint.pformat()。
pprint.pprint(someDictValue) = print(pprint.pformat(someDictValue))
>>> import pprint
>>> text=‘One night can change everything in your life.‘
>>> count={}
>>> for char in text:
... count.setdefault(char,0)
... count[char]=count[char]+1
...
>>> pprint.pprint(count)
{‘ ‘: 7,
‘.‘: 1,
‘O‘: 1,
‘a‘: 2,
‘c‘: 2,
‘e‘: 5,
‘f‘: 1,
‘g‘: 3,
‘h‘: 3,
‘i‘: 4,
‘l‘: 1,
‘n‘: 6,
‘o‘: 1,
‘r‘: 2,
‘t‘: 2,
‘u‘: 1,
‘v‘: 1,
‘y‘: 2}本文出自 “乱码时代” 博客,请务必保留此出处http://juispan.blog.51cto.com/943137/1947913
原文:http://juispan.blog.51cto.com/943137/1947913