0
点赞
收藏
分享

微信扫一扫

基于python下的字典


字典的定义:

字典是除列表以外python中最灵活的数据类型。字典同样可以用来存储多个数据,通常用于存储描述一个物体的相关信息。
# 字典是一个无序的数据集和,使用print函数输出字典时,
# 通常输出的顺序和定义的顺序是不一致的

字典和列表的区别:

列表是有序的对象集和,字典是无序的对象集和。
字典用{}定义,字典使用键值对存储数据,键值对之间使用,分隔,
键key是索引
值value是数据

键必须是唯一的(因为我们必须通过键来找到数据)
值可以取任何数据类型,但键只能使用字符串,数字或元组。

查看字典的用法:

In [2]: xfl = {'name':'xuefeilong','age':18}

In [3]: type(xfl) 查看类型为字典类型
Out[3]: dict

In [4]: xfl. 字典的很多功能并不常用简单介绍常用功能
xfl.clear xfl.items xfl.pop xfl.viewitems
xfl.copy xfl.iteritems xfl.popitem xfl.viewkeys
xfl.fromkeys xfl.iterkeys xfl.setdefault xfl.viewvalues
xfl.get xfl.itervalues xfl.update
xfl.has_key xfl.keys xfl.values

基于python下的字典_数据集

定义一个字典:

# 定义一个字典
# 字典是一个无序的数据集合,print输出字典的时候
# 通常和定义的顺序不一样

xfl = {'name': 'xuefeilong',
'age': 18,
'height': 175,
'weight': 66.5}
print xfl

基于python下的字典_键值对_02

从字典取值:

# 定义一个字典
# 字典是一个无序的数据集合,print输出字典的时候
# 通常和定义的顺序不一样

xfl = {'name': 'xuefeilong',
'age': 18,
'height': 175,
'weight': 66.5}
# print xfl

# 1.取值
print xfl['height']

基于python下的字典_键值对_03

修改字典的值:

xfl = {'name': 'xuefeilong',
'age': 18,
'height': 175,
'weight': 66.5}
# 2.增加/修改
xfl['age'] = 21 # 键存在的时候直接替换
print xfl
xfl['sex'] = 'man' # 键不存在的时候直接添加
print xfl

基于python下的字典_键值对_04

删除字典元素:

xfl = {'name': 'xuefeilong',
'age': 18,
'height': 175,
'weight': 66.5}

# 3.删除
xfl.pop('name')
print xfl

基于python下的字典_数据_05

字典用法里面没有extend,使用会报错,别混淆概念:

a=[1,2,3,4,5]

b=[6,7,8]

print a.extend(b)

基于python下的字典_键值对_06

len统计键值对的数量:

xfl = {'name': 'xuefeilong',
'age': 18,
'height': 175,
'weight': 66.5}
print xfl
# 1.统计键值对的数量
print len(xfl)

基于python下的字典_数据_07

update合并字典:

xfl = {'name': 'xuefeilong',
'age': 18,
'height': 175,
'weight': 66.5}
print xfl
# 2.合并字典
# 字典的自定义键是可变的也是唯一的
xyy = {'name': 'xiangyuanyuan',
# 存在的键直接替换
'sex': 'girl'}
# 不存在的键直接添加
xfl.update(xyy)
print xfl

基于python下的字典_键值对_08

循环键值:

# 单纯的循环某个键值
xfl = {'name': 'xuefeilong',
'age': 18,
'height': 175,
'weight': 66.5}
for k in xfl:
print '%s ----> %s' % (k, xfl[k])
# xfl[k]是通过k来索引对应的值进行输出

基于python下的字典_键值对_09

循环字典:

# 循环一个字典,用列表的形式(将字典放到列表来循环)
card_list = [{'name': 'xfl', 'age': '18'},
{'name': 'xyy', 'age': '21'}]
for card_info in card_list:
for k in card_info: # 利用嵌套来输出每个字典的值
print '%s ----> %s' % (k, card_info[k])

基于python下的字典_数据集_10


举报

相关推荐

0 条评论