Python学习笔记_第四章:当索引不好用时

字典是Python中唯一的内建的映射类型,这里是内建唯一,可以自己创建其他映射类型
键可以是数字、字符串甚至是元祖

字典的使用

...

创建和使用字典

>>> phonebook = {'Alice' : '2341', 'Beth' : '9102', 'Cecil' : '3258'}

dict函数

dict可以通过其他映射(如字典)或者键-值对的序列建立字典。

>>> seq = [('name', 'Gumby'), ('age', '42')]
>>> d = dict(seq)
>>> d
{'age': '42', 'name': 'Gumby'}

通过关键字参数创建字典

>>> d = dict(name = 'lili')
>>> d
{'name': 'lili'}
>>> 

dict函数还可以以映射作为参数,来建立项目和映射相同的字典,如果映射为一个字典,可以使用copy方法

基本字典操作

很多方面和队列相似
len(d)
d[k]
d[k] = v
del d[k]
k in d
但是也有下面区别:
1.键类型:字典的键可以是任意不可变类型,如浮点型,字符串,元祖
2.自动添加:即使键期初不在字典中,也可以为它赋值
3.成员资格:表达式 k in d 查找的是键而非值
在字典中查找键比在列表中查找值的效率更高

字典的格式化字符串

>>> phonebook = {'Beth' : '9102', 'Alice' : '2341', 'Cecil' : '3258'}
>>> "Cecil's number is %(Cecil)s." % phonebook
"Cecil's number is 3258."

简单转换

>>> template = '''<html>
<head><title>%(title)s</title></head>
<body>
<h1>%(title)s</h1>
<p>%(text)s</p>
</body>'''
>>> data = {'title' : 'My Home Page', 'text' : 'Welcome to my homepage!'}
>>> print template % data
<html>
<head><title>My Home Page</title></head>
<body>
<h1>My Home Page</h1>
<p>Welcome to my homepage!</p>
</body>
>>> 

在模板系统中的应用,一般来说只要关键字在字典里可以找到,模板中可以用任意数量的转换说明符。

字典方法

1.clear
2.copy
3.fromkeys:使用给定的键建立字典,每个键都对应一个默认值none
4.get:当访问字典中不存在的键时会返回none,而不会报错
5.has_key
6.items和iteritems
7.keys和iterkeys
8.pop
9.popitem
10.setdefault
11.update
12.values和ltervalues

小结

映射:映射可以使用任意不可变对象标识元素,最常用的类型是字符串和元祖。Python中唯一的内建映射类型是字典。
利用字典格式化字符串:当字符格式化中使用元祖时,还需要对元祖中每一个元素都设定“格式化说明符”,在使用字典时说明符可以比字典中的项少。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值