您的位置:首页 > 编程语言 > Python开发

字典

2016-07-05 23:43 441 查看

对字典的认识:

字典由键(key)和对应值(value)成对组成。字典也被称作关联数组或哈希表。

注意:

键必须独一无二,但值则不必。即,键是不能重复,但值可以是重复的;

不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住

键必须不可变,所以可以用数,字符串或元组充当,所以用列表就不行;

值可以取任何数据类型,但必须是不可变的,如字符串,数或元组。

创建字典(三种方法)

第一种方法:创建空字典

例:

d = {}   #可以往空字典添加内容


第二种方法:创建有内容的字典

person = {"name":"xiaoxu","blog":"http://blog.csdn.net/xsj_blog"}


第三种方法:先创建元组,元组里面是列表元素,每个列表都有两个元素,这两个元素分别对应着即将创建字典的key和value

例:

name = ([1,'google'],[2,'facebook'])
web = dict(name)


第四种方法:使用fromkeys创建字典,其语法格式如下

mydict = {}.fromkeys(arg)


例:

>>> book = {}.fromkeys(("python","author"),"xiaoxu")
>>> book
{'python': 'xiaoxu', 'author': 'xiaoxu'}
>>>


访问字典的值

>>> dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
>>> print dict['Name']
Zara
>>>


修改字典

>>> dict = {'Name': 'xiaoxu', 'Age': 20, 'Class': 'First'};
>>> dict['Age'] = 23;
>>> print dict['Age']
23
>>>


删除字典元素

例:

>>> dict = {'Name': 'xiaoxu', 'Age': 20, 'Class': 'First'};
>>>dict.clear()  #清空字典所有条目
>>>del dict;   #删除字典


六、字典常用方法

copy()函数

作用:返回一个字典的浅复制

例:

>>> d = {"name":"xiaoxu","blog":"http://blog.csdn.net/xsj_blog"}
>>>f=d.copy()
>>> f
{'blog': 'http://blog.csdn.net/xsj_blog', 'name': 'xiaoxu'}
>>>


clear()函数

作用:删除字典内所有元素

例:

>>>dict = {'Name': 'xiaoxu', 'Age': 20, 'Class': 'First'};
>>>dict.clear()  #清空字典所有条目


get()函数

语法格式:get(key, default=None)

作用:返回指定键的值,如果值不在字典中返回default值

例:

>>> d = {'enjoy':['python'],'name':'xiaoxu'}
>>> d.get('name')
'xiaoxu'
>>> d.get("teacher","duolaoshi")
'duolaoshi'
>>>


setdefault()

语法格式:setdefault(key, default=None)

作用:和get()类似, 但如果键不已经存在于字典中,将会添加键并将值设为default

例:

>>> d = {'enjoy':['python'],'name':'xiaoxu'}
>>> d.setdefault('name')
'xiaoxu'
>>> d.setdefault('city','suzhou')
'suzhou'
>>> d
{'enjoy': ['python'], 'city': 'suzhou', 'name': 'xiaoxu'}
>>>
>>> e.setdefault('teacher')
>>> e
{'enjoy': ['python'], 'city': 'suzhou', 'name': 'xiaoxu', 'teacher': None}
>>>


items()函数

作用:以列表返回可遍历的(键, 值) 元组数组

例:

>>> d = {'enjoy': ['python'], 'city': 'suzhou', 'name': 'xiaoxu'}
>>> d.items()
[('enjoy', ['python']), ('city', 'suzhou'), ('name', 'xiaoxu')]
>>>


keys()函数

作用:以列表返回一个字典所有的键

例:

>>> d = {'enjoy': ['python'], 'city': 'suzhou', 'name': 'xiaoxu'}
>>> d.keys()
['enjoy', 'city', 'name']
>>>


values()函数

作用:以列表返回字典中的所有值

例:

>>> d = {'enjoy': ['python'], 'city': 'suzhou', 'name': 'xiaoxu'}
>>> d.values()
[['python'], 'suzhou', 'xiaoxu']
>>>


———-

pop()函数

popitem()函数

update()函数

作用:把字典dict2的键/值对更新到dict里

例:

>>> d1 = {"lang":"python"}
>>> d2 = {"name":"xiaoxu"}
>>> d1.update(d2)
>>> d1
{'lang': 'python', 'name': 'xiaoxu'}
>>> d2
{'name': 'xiaoxu'}
>>>
>>>
>>> d2.update([("city","suzhou"),("web","google")])
>>> d2
{'city': 'suzhou', 'name': 'xiaoxu', 'web': 'google'}
>>>


has_key()函数

语法格式:has_key(key)

作用:如果键在字典dict里返回true,否则返回false

例:

>>>d = {'enjoy': ['python'], 'city': 'suzhou', 'name': 'xiaoxu'}
>>>d.has_key("name")
>>>True
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python字典