admin 管理员组

文章数量: 887006

Python数据结构

文章目录

  • 字典
    • 概念
    • 字典的创建
    • 字典的获取
    • 字典增删改
    • 获取字典视图
    • 字典的遍历
    • 字典的特点
    • 字典生成式


字典

概念

Python内置数据结构之一,与列表一样是一个可变序列
以键值对的方式存储数据,字典是一个无序的序列
相当于unordered_map,底层是哈希存储

字典的创建

#使用{}创建字典
scores={'wangchen':1,'hedenghui':2,'hezhaoxuan':3}
print(scores)#使用dict()创建
student=dict(name='jack',age=19)
print(student)#空字典
d={}
print(d)

字典的获取

两种方式,[]或者get(),下面说明了两种区别

scores={'wangchen':1,'hedenghui':2,'hezhaoxuan':3}
print(scores['wangchen'])
#print(scores['wang']) 报异常错误
print(scores.get('wangchen'))
print(scores.get('wang'))#不存在返回None
print(scores.get('马琦',100))#不存在返回指定值100

字典增删改

#增删改
scores={'wangchen':1,'hedenghui':2,'hezhaoxuan':3}
print(scores)
scores['chenliu']=99
print(scores)
scores['chenliu']=100
print(scores)
del scores['wangchen']
print(scores)
scores.clear()
print(scores)

获取字典视图

scores={'wangchen':1,'hedenghui':2,'hezhaoxuan':3}
print(scores.keys())
print(type(scores.keys()))print(scores.values())
print(type(scores.values()))print(scores.items())
print(type(scores.items()))

字典的遍历

scores={'wangchen':1,'hedenghui':2,'hezhaoxuan':3}
for item in scores:print(item,scores[item])

字典的特点

  1. 字典中的所有元素都是一个key-value对,key不允许重复,value可以重复
  2. 字典中的元素是无序的
  3. 字典中的key必须是不可变对象
  4. 字典中也可以根据需要动态地伸缩
  5. 字典会浪费较大的内存,是一种使用空间换时间的数据结构

字典生成式

items=['first','second','third']
nums=[1,2,3]d={item:num for item,num in zip(items,nums)}
print(d)
d={item.upper():num for item,num in zip(items,nums)}
print(d)

本文标签: Python数据结构