python中字典的特点_Python

介绍

字典(dictionary)同样是一种可以用于存储各种不同类型数据的集合,它是通过索引键来存取数据的一种内置数据结构类型。

在python中字典是继列表外使用最灵活的一种内置数据结构类型,其中字典中的元素是通过索引键来存储元素的,而列表则是通过下标偏移值来存储元素的,由此可知字典是一种无序的对象集合,而列表是一种有序的对象结合。

字典是一种可修改的数据结构类型,它可以存储任意类型的对象。

字典定义:用 { } 括住元素,内部每个元素都由 索引(key) 和它对应的 值(value) 组成,索引在前,值在后,两者用 : 冒号隔开,字典内各元素之间用 , 逗号隔开,例如:

dict ={key1 : value1 ,key2 : value2,...,key_n : value_n }

注意:同一字典内的 键(key) 切勿相同,如果存在相同的 键(key),程序将使用最最后一个定义的数据!

创建字典变量

#!/usr/bin/python3

# -*- coding: utf-8 -*-

# 单独赋值

dict1 = {} # 定义一个空字典

dict1["python"] = "Programing Language" # 给字典dict1添加一个元素

# 直接定义字典并赋值

dict2 = {'a':97 , 'name':'xiaoming' ,100:'yuan'}

提取字典里的值

通过字典里每个元素所定义的索引键值来获得相应元素所对应的值。实例如下:

#!/usr/bin/python3

# -*- coding: utf-8 -*-

dic = {'a':97 , 'name':'xiaoming' ,100:'yuan'}

print("索引‘a’的值为:", dic['a'])

print("索引100的值为:", dic[100])

输出结果:

索引‘a’的值为: 97

索引100的值为: yuan

注意:在描述索引键的时候,一定要将完整的键值写入(包括符号)。

更新字典元素

由与字典是一种可读可写的结构型数据,所以在定义字典后可以进行元素的修改/更新。

1)向字典添加新内容:增加新的键和对应的值

2)更新索引所对应的值:使用原有的索引,然后附上新的值

实例如下:

#!/usr/bin/python3

# -*- coding: utf-8 -*-

dic = {'colour':'red','money':100 } # 创建字典

print(dic) # 输出字典

dic['code'] = 8214 # 往字典增加一个元素

print(dic) # 输出字典

dic['colour'] = 'yellow' # 更新索引为‘colour’的值

print(dic) # 输出字典

输出结果:

{'money': 100, 'colour': 'red'}

{'money': 100, 'colour': 'red', 'code': 8214}

{'money': 100, 'colour': 'yellow', 'code': 8214}

提示:字典中的元素排序是随机的!

删除字典元素

由于字典的可读可写特性,所以字典支持单一元素的删除,同时也可以将整个字典删除。

同样的,字典数据的删除操作,可使用 del 语句完成,具体有:

1) 删除单个元素: del dict_name[key_name]

2) 删除整个字典: del dict_name

实例如下:

#!/usr/bin/python3

# -*- coding: utf-8 -*-

dic = {'colour':'red','money':100 ,'ID':7562} # 创建字典

print(dic) # 输出字典

del dic['money'] # 删除索引为'money'的元素

print("更新后的字典:", dic)

del dic # 删除整个字典

print(dic)

输出结果:

{'money': 100, 'colour': 'red', 'ID': 7562}

更新后的字典: {'colour': 'red', 'ID': 7562}

Traceback (most recent call last):

File "./dict.py", line 31, in print dic

NameError: name 'dic' is not defined

分析:在删除字典后,当再次调用时,系统会报错说没有定义该字典。

字典索引键特性

1)索引唯一特性:一个元素的索引一旦被定义后,便不可修改。如使用不同的索引相同的值,表示添加一个元素。

2)使用后者特性:当一个索引键出现两次时,将采用后面一个索引键所对应的值,此时表示更新元素。

字典内置函数&方法

(1)Python字典包含了以下内置函数:

函数

功能

len( dict )

计算字典元素(键)的个数

str( dict )

将字典转为一个字符串

cmp( dict1 ,dict2 )

比较两个字典的元素

(2)Python字典包含了以下内置方法:

方法

功能

dict.clear( )

清空字典内所有元素

dict.copy( )

深拷贝(仅一级目录)

dict.fromkeys( seq,val )

创建一个新字典,序列seq的元素为键值,val为值

dict.get( key ,deafult=None)

返回查找‘键’对应的值,如果没有该‘键’则返回空

dict.has_key( key )

如果键在字典里返回true,否则返回false

dict.setdefault( key ,default)

查找键值,如果键在字典中则返回其值,如果不在,则添加键并将值设为default

dict.update(dict2)

把字典dict2的键/值对更新到dict中

dict.items( )

以列表形式返回可遍历的(键, 值) 元组数组

dict.has_key(key)

如果键在字典dict中返回true,反之返回false

dict.keys( )

以列表形式返回字典dict中的所有‘键’

dict.values( )

以列表形式返回字典dict中的所有‘值’

喜欢 (0)or分享 (0)

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值