python知识点结构(五)(5.1标准类型)5.1.3三大常用类型之字典
3、 字典
特性:无序,类似集合。value都是通过key值索引。
创建字典的几种形式。如下例。
#! /usr/bin/env python
#-*- coding:utf-8 -*-
#1 直接初始化一个字典
a = {}
print '1',a
a = {'k1':'v1','k2':'v2'}
print '1',a
#2 dict工厂函数定义,输入参数必须是可迭代,元素为键值对。若想添加一个字符串必须后面加括号。
a = dict(([1,'a'],))
print '2',a
a = dict(([1,'a'],[2,'h'],(3,'t')))
print '2',a
#3 对应键值逐个添加值
b = {}
b['k1'] = 'v1'
print '3',b
>>>
1 {}
1 {'k2': 'v2', 'k1': 'v1'}
2 {1: 'a'}
2 {1: 'a', 2: 'h', 3: 't'}
3 {'k1': 'v1'}
>>>
遍历所有键值,如下例。
#! /usr/bin/env python
#-*- coding:utf-8 -*-
a = {'k1':'v1','k2':'v2','q1':'y1'}
#1 keys遍历所有键
key = a.keys()
print key
for i in key:
print '1',i
#2 value遍历所有值。
value = a.values()
print value
for i in value:
print '2',i
#3 items键值一起遍历,返回一个列表
item = a.items()
print item,type(item)
for i,j in item:
print '3',i,j
>>>
['q1', 'k2', 'k1']
1 q1
1 k2
1 k1
['y1', 'v2', 'v1']
2 y1
2 v2
2 v1
[('q1', 'y1'), ('k2', 'v2'), ('k1', 'v1')] <type 'list'>
3 q1 y1
3 k2 v2
3 k1 v1
>>>
增删改查,主要有这样几个函数,update,clear,pop,其中增加有update和直接按照给键赋值的方式给字典新增元素。如下例。
#! /usr/bin/env python
#-*- coding:utf-8 -*-
a = {'k1':'v1','k2':'v2','q1':'y1'}
#1 update增加元素
ar = a.update()
print '1',a,ar
#2 直接增加
a['new'] = 'newv'
print '2',a
#3 pop清除指定元素
b=a.pop('new')
print '3',a,b
#4 clear清除字典a中所有元素
a.clear()
print '4',a
>>>
1 {'q1': 'y1', 'k2': 'v2', 'k1': 'v1'} None
2 {'q1': 'y1', 'k2': 'v2', 'k1': 'v1', 'new': 'newv'}
3 {'q1': 'y1', 'k2': 'v2', 'k1': 'v1'} newv
4 {}
>>>
浙公网安备 33010602011771号