python字典
dict函数
1 可以通过其他映射(比如其他字典)和(键,值)对的序列建立字典.
items = [('name','Bob'),('age',42)]
d = dict(items)
2 dict通过关键词参数创建字典
d = dict(name="Bob", age=42)
格式化字符串
phonebook = {'Beth':"9012", 'Alice':'2341', 'Cecil', '3245'}
"Cecil phone number is %(Cecil)s."% phonebook
模板化:
template = '''```<html>
<head><title>%(title)s</title></head>
<body>
<h1>%(title)s</h1>
<p>%(text)s</p>
```'''
data = {'title':'my home page','text':'Welcome to my page'}
print template%data
字典方法
1 clear()
清空字典,返回None
2 copy()
它与"="都是浅复制,但不同的是,在新字典中使用键的方式更改值时,Copy在原字典中值不变,而后者会变化
3 fromkeys()
使用给定的键建立新的字典:
{}.fromkeys(['name','age'])
output: ['name':None, 'age':None]
也可以自己提供默认值
dict.fromkeys(['name','age'], (unknown))
output: ['name':(unknown), 'age':(unknown)]
4 get()
试图访问不存在的项默认返回None,自己定义默认值,替换None:
d.get('name', "Not available")
5 has_key()
6 items/iteritems
items返回(键,值)对
iteritems返回迭代器对象:
it = d.iteritems()
list(it)
7 keys和iterkeys
8 values/itervalues
9 pop
获得给定键的值,并删除
10 popitem
随机弹出项,若想一个一个移除并处理,该法很有用
11 setdefault
与get使用类似,当键不存在时,返回默认值,并在字典中加入此项,如果键存在,就返回相应的值,不改变字典
12 update
用一个字典更新另一个字典