python学习之基础知识(三)
2017-09-08 23:21
281 查看
1,字典数据类型:像列表一样,“字典”是很多值的集合。但不像列表的下标,字典的索引可以使用许多不同的数据类型,不只是整数。字典的索引被称为“键”,键及其关联的值被称为“键-值”对。在代码中,字典的输入使拥花括号{}。示例如下:
mycat={'size':'fat','color':'grey','disposition':'loud'}
这句代码将一个字典赋值给mycat变量。这个字典的键值是‘size','color','disposition',这些键相应的值是:’fat','grey','loud',可以通过他们的键值访问这些值。例如:
mycat['size']
输出结果就是’fat'
字典也可以使用整数作为键值,就像用列表使用整数作为下标,但是它们没有必要从0开始,可以是任何数字。示例如下;
spam={'12345':'lugggage combinatiion','42':'the answer'}
2.字典与列表相比,字典中的表项是不排序的,因此不能像列表那样切片。字典可以使用任何值作为键。
3.keys(),values()和items():这3个函数返回类似列表的值,分别对应于字典的键、值和键-值对。这三个函数返回的值不是真正的列表,它们不能被修改,没有append()方法。但这些数据类型可以用于for循环。示例如下:
spam={'color':'red','age':'42'}
for v in spam.values():
print(v)
程序输出:red,42
for k in spam.keys():
print(k)
程序输出:color,age
for i in spam.items()
print(i)
程序输出:(‘color':'red')
('age':'42')
items()函数返回的dic_items值中,包含的是键和值的元组。
4.如果希望通过keys(),values()和items()函数的返回值是列表类型,需要把类似列表的返回值传递给list函数,示例如下:
spam={'color':'red','age':'42'}
list(spam.keys())
程序的输出结果为['color','age'],为列表类型。
5.检查字典中是否存在键值:使用in和not in操作符,示例如下:
spam={'color':'red','age':'42'}
’name' in spam.keys()
程序的输出结果是‘False'
6.get()方法:在访问一个键的值之前,检查该键是否存在于字典之中,这很麻烦。字典中有一个get()方法,它有两个参数:要取得其值的键,以及该键的值不存在是,返回备用值。示例如下:
spam={'apple':2,'cup':'3'}
spam.get('apple',0)
程序会输出2
spam.get('egg',0)
程序会输出0,因为egg不存在spam字典的键中,因此返回默认的0值来说明该情况。
7.setdefault(var1,var2):该函数传递了两个参数,var1表示的是要检查的键,var2表示的如果该键不存在时要设置的值,如果该键确实存在,就会返回已经存在的键值,示例如下:
>>> spam={'name':'ruirui','age':23}
>>> spam.setdefault('height','you can guess')
'you can guess'
>>> spam.setdefault('height',155)
'you can guess'
setdefault()函数是一个很好的快捷方式,可以确保一个键存在。例如可以使用这个函数计算一个字符串中每个字符出现的次数。如下所示:
message='it was a bright cold day in April,and the clocks were striking thirteen.'
count={}
for char in message:
count.setdefault(char,0)
count[char]=count[char]+1
print(count)
输出结果为:{'i': 7, 't': 6, ' ': 12, 'w': 2, 'a': 4, 's': 3, 'b': 1, 'r': 5, 'g': 2, 'h': 3, 'c': 3, 'o': 2, 'l': 3, 'd': 3, 'y': 1, 'n': 4, 'A': 1, 'p': 1, ',': 1, 'e': 5, 'k': 2, '.': 1}
8.pprint模块:用于漂亮打印,该模块中有pprint()和pformat()函数,它们可以’漂亮打印‘一个字典的字。示例如下:
还是上面的程序,不过将print(count)替换为pprint.pprint(count),其输出结果如下:
{' ': 12,
',': 1,
'.': 1,
'A': 1,
'a': 4,
'b': 1,
'c': 3,
'd': 3,
'e': 5,
'g': 2,
'h': 3,
'i': 7,
'k': 2,
'l': 3,
'n': 4,
'o': 2,
'p': 1,
'r': 5,
's': 3,
't': 6,
'w': 2,
'y': 1}
如果字典本身包含嵌套的列表或者字典,pprint()函数就特别有用。
mycat={'size':'fat','color':'grey','disposition':'loud'}
这句代码将一个字典赋值给mycat变量。这个字典的键值是‘size','color','disposition',这些键相应的值是:’fat','grey','loud',可以通过他们的键值访问这些值。例如:
mycat['size']
输出结果就是’fat'
字典也可以使用整数作为键值,就像用列表使用整数作为下标,但是它们没有必要从0开始,可以是任何数字。示例如下;
spam={'12345':'lugggage combinatiion','42':'the answer'}
2.字典与列表相比,字典中的表项是不排序的,因此不能像列表那样切片。字典可以使用任何值作为键。
3.keys(),values()和items():这3个函数返回类似列表的值,分别对应于字典的键、值和键-值对。这三个函数返回的值不是真正的列表,它们不能被修改,没有append()方法。但这些数据类型可以用于for循环。示例如下:
spam={'color':'red','age':'42'}
for v in spam.values():
print(v)
程序输出:red,42
for k in spam.keys():
print(k)
程序输出:color,age
for i in spam.items()
print(i)
程序输出:(‘color':'red')
('age':'42')
items()函数返回的dic_items值中,包含的是键和值的元组。
4.如果希望通过keys(),values()和items()函数的返回值是列表类型,需要把类似列表的返回值传递给list函数,示例如下:
spam={'color':'red','age':'42'}
list(spam.keys())
程序的输出结果为['color','age'],为列表类型。
5.检查字典中是否存在键值:使用in和not in操作符,示例如下:
spam={'color':'red','age':'42'}
’name' in spam.keys()
程序的输出结果是‘False'
6.get()方法:在访问一个键的值之前,检查该键是否存在于字典之中,这很麻烦。字典中有一个get()方法,它有两个参数:要取得其值的键,以及该键的值不存在是,返回备用值。示例如下:
spam={'apple':2,'cup':'3'}
spam.get('apple',0)
程序会输出2
spam.get('egg',0)
程序会输出0,因为egg不存在spam字典的键中,因此返回默认的0值来说明该情况。
7.setdefault(var1,var2):该函数传递了两个参数,var1表示的是要检查的键,var2表示的如果该键不存在时要设置的值,如果该键确实存在,就会返回已经存在的键值,示例如下:
>>> spam={'name':'ruirui','age':23}
>>> spam.setdefault('height','you can guess')
'you can guess'
>>> spam.setdefault('height',155)
'you can guess'
setdefault()函数是一个很好的快捷方式,可以确保一个键存在。例如可以使用这个函数计算一个字符串中每个字符出现的次数。如下所示:
message='it was a bright cold day in April,and the clocks were striking thirteen.'
count={}
for char in message:
count.setdefault(char,0)
count[char]=count[char]+1
print(count)
输出结果为:{'i': 7, 't': 6, ' ': 12, 'w': 2, 'a': 4, 's': 3, 'b': 1, 'r': 5, 'g': 2, 'h': 3, 'c': 3, 'o': 2, 'l': 3, 'd': 3, 'y': 1, 'n': 4, 'A': 1, 'p': 1, ',': 1, 'e': 5, 'k': 2, '.': 1}
8.pprint模块:用于漂亮打印,该模块中有pprint()和pformat()函数,它们可以’漂亮打印‘一个字典的字。示例如下:
还是上面的程序,不过将print(count)替换为pprint.pprint(count),其输出结果如下:
{' ': 12,
',': 1,
'.': 1,
'A': 1,
'a': 4,
'b': 1,
'c': 3,
'd': 3,
'e': 5,
'g': 2,
'h': 3,
'i': 7,
'k': 2,
'l': 3,
'n': 4,
'o': 2,
'p': 1,
'r': 5,
's': 3,
't': 6,
'w': 2,
'y': 1}
如果字典本身包含嵌套的列表或者字典,pprint()函数就特别有用。
相关文章推荐
- Python学习笔记【一】——《python基础教程》::基础知识
- Python 学习(4):基础知识点
- 一些关于Python的基础知识 - 千月的python linux 系统管理指南学习笔记(3)
- Python学习笔记——基础知识
- 【python学习笔记一】程序设计计算机基础知识
- Python学习之路一--(基础知识)
- Python学习笔记(基础知识点一)
- Python基础知识学习
- Python学习第一天——基础知识(笔记)
- Python学习-基础知识-2
- Python学习系列(二)(基础知识)
- Linux Python基础知识学习
- python核心编程学习记录之基础知识
- Python学习之路-基础知识2-文件操作
- Python学习之一 Python基础知识
- python之 前端HTML/CSS基础知识学习笔记
- Python学习之基础知识
- python学习之基础知识(二)
- python学习笔记-Day13 -css基础知识
- Python学习笔记一 基础知识