python-010-字典
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-010-字典相关的知识,希望对你有一定的参考价值。
字典
键key:拼音
值value:页码
key-value:键值对
字典是python中唯一的映射类型,指两个元素之间一一对应的关系
(注明:字典是映射类型,不是序列类型)
brand=[‘外星人‘,‘戴尔’,‘联想’,‘苹果’]
English=[‘AlienWare‘,‘Dell‘,‘Lenovo‘,‘Apple‘]
#品牌与英文一一对应
print(‘外星人---‘,‘AlienWare‘)显示不出来中文,ASCII是十进制, 此时utf-8用的是Unicode,对应的是十六进制的数据,此时转换过程
#不行,byteString,十进制,unicodeString 十六进制,python2默认十进制,
·字典的创建于访问
dict:字典可以dict(),n内置方法
d={}表示形式
d={‘外星人‘:‘AlienWare‘,‘戴尔‘:‘Dell‘,‘联想‘:‘Lenovo‘,‘苹果‘:‘Apple‘}
print d[‘外星人‘]
AlienWare
1、名称={键1:值1,键2:值2,。。。}
2、空字典={}
3、利用函数创建字典
dict(mapping)
d=dict(((‘one‘,1),(‘two‘,2),(‘three‘,3)))#可以用列表 只要映射关系正确都可以
print d#{‘three‘: 3, ‘two‘: 2, ‘one‘: 1}
4、利用关键字参数创建字典
d=dict(one=1,two=2,three=3)
print d#{‘three‘: 3, ‘two‘: 2, ‘one‘: 1}
·字典的访问
1、字典的名称[键名]
2、改写键对应的值
d=dict(one=1,two=2,three=3)
d[‘one‘]=100
print d#{‘three‘: 3, ‘two‘: 2, ‘one‘: 100}
3、增加新的键值对
d[‘four‘]=4
print d#{‘four‘: 4, ‘three‘: 3, ‘two‘: 2, ‘one‘: 100}
4、访问不存在的键值对:
报错
·字典的内键方法(内置函数):
1、fromkeys(...)
创建并且返回一个新的字典
dict.fromkeys(s,[,v])
s:键 v:值(没有给值,默认None)
当第一个参数是容器(元祖,列表,字典)时,会将第二个
参数的整体看成键的值
d.fromkeys((‘one‘,‘two‘,‘three‘))#{‘three‘: None, ‘two‘: None, ‘one‘: None}
d.fromkeys([‘one‘,‘two‘,‘three‘])#{‘three‘: None, ‘two‘: None, ‘one‘: None}
d.fromkeys({‘one‘:1,‘two‘:2,‘three‘:3})#{‘one‘: None, ‘three‘: None, ‘two‘: None}只拿键不拿值
d.fromkeys([‘one‘,‘two‘,‘three‘],[1,2,3])#{‘three‘: [1, 2, 3], ‘two‘: [1, 2, 3], ‘one‘: [1, 2, 3]}
2、keys()
返回字典键的引用
d=d.fromkeys([‘one‘,‘two‘,‘three‘])
d.keys()#[‘three‘, ‘two‘, ‘one‘]
(把所有键拿出了封装列表输出)
3、values()
d={‘one‘:1,‘two‘:2,‘three‘:3}
d.values()#[3, 2, 1]
返回字典中的值引用
(把所有值拿出了,封装一个列表返回)
4、items()
d.items()#[(‘three‘, 3), (‘two‘, 2), (‘one‘, 1)]
返回字典的项(键值对)
5、get(key[,d])
获得(访问)字典中的键值对
d.get(‘one‘)#1
d.get(‘five‘)
print d.get(‘five‘)#None
6、in/not in
d={‘one‘:1,‘two‘:2,‘three‘:3}
‘three‘in d#True
‘five‘in d #False
7、clear()
清空字典
d.clear()
d#{}
8、copy()
浅拷贝
字典拷贝,地址不同 开始字典里面内容没有发生改变,更深地址不变。
9、pop()
给定键弹出对应键值对(弹出的值会在字典移除,没有对应的键
,并且字典没有异常,就会报错。)返回对应值。
{‘three‘: 3, ‘two‘: 2, ‘one‘: 1}
d.pop(‘one‘)#1
10、popitem()
同上,返回是一个键值对(栈空间)。
d={‘three‘: 3, ‘two‘: 2, ‘one‘: 1}
d.popitem()#(‘one‘, 1)弹出是随机的 内存上面的
11、setdefault(...)
如果字典中没有键值对,则在随机位置创建一个键,如果值没有设置,默认None
setdefault(k,[,d])
d={‘three‘: 3, ‘two‘: 2}
d.setdefault(‘one‘)
d#{‘one‘: None, ‘three‘: 3, ‘two‘: 2}
12、利用字典映射关系,更新字典
d={‘three‘: 3, ‘two‘: 2, ‘one‘: 1}
a={‘three‘:5}
d.update(a)
d#{‘one‘: 1, ‘three‘: 5, ‘two‘: 2}
以上是关于python-010-字典的主要内容,如果未能解决你的问题,请参考以下文章
Selenium with Python 010 - unittest 框架(又称PyUnit 框架)
[Python]?????????Python?????????010???(????????????????????????????????????)????????????????????????