python基础之字典概述及基本操作

python基础之字典概述及基本操作

一. 字典的概述

  • python内置的数据结构之一,与列表一样的是一个可变序列
  • 以键值对的方式存储数据,字典是一个无序的序列

二. 字典的实现原理

  • 字典的实现原理与查字典类似,查字典是先根据部首或者拼音找对应的页码,Python中的字典是根据key查找value,所在的位置.

三. 字典的创建

  • 常用的方式
使用花括号{}
    dictionary={'张三':100,'李四':200}
使用内置函数:
    dict(name='张三',age=20)

实例演示

  • 创建字典,使用花括号{}
dictionary={'张三':100,'李四':200,'王五':300}
print(dictionary,type(dictionary))

执行结果:
{'张三': 100, '李四': 200, '王五': 300} <class 'dict'>
  • 创建字典,使用内置函数dict()
people=dict(name='张三',age=20,gender='男')
print(people)

执行结果:
{'name': '张三', 'age': 20, 'gender': '男'}
  • 创建空字典
student={}
print(student)

执行结果:
{}

四. 字典的查

  • 字典中的元素获取
[]取值:       ['张三']
get()取值:    scores.get('张三')

执行结果:

  • 使用[]取值和get()取值的区别
1. []取值字典中不存在指定的key,报错
2. get()取值,如果字典中不存在指定的key,不会报错,而是返回none可以通过参数设置默认的value,以便指定key不存在是返回

实例演示

  • 使用[]获取字典中的值
scores={'张三':10,'李四':20,'王五':30}
print(scores)
print('-------------使用[]获取字典中的值---------------------')
print('查询张三的值: ',scores['张三'])

执行结果:
{'张三': 10, '李四': 20, '王五': 30}
-------------使用[]获取字典中的值---------------------
查询张三的值:  10
  • 使用get()获取字典中的值
scores={'张三':10,'李四':20,'王五':30}
print('查询张三的值: ',scores.get('张三'))
print('查询不存在的值: ',scores.get('空'))
print('查询不存在则返回88:',scores.get('陈六',88))

执行结果:
查询张三的值:  10
查询不存在的值:  None
查询不存在则返回88: 88

五. 字典的删除,添加,修改以及键的判断

  • 字典键的判断
scores={'张三':10,'李四':20,'王五':30}
print('--------------字典键的判断------------------')
print('张三在字典中: ','张三' in scores)
print('张三不在字典: ','张三' not in scores)

执行结果:
张三在字典中:  True
张三不在字典:  False
  • 字典元素的删除
del scores['张三']
print('删除张三: ',scores)
scores.clear()
print('清空字典元素: ',scores)

执行结果:
删除张三:  {'李四': 20, '王五': 30}
清空字典元素:  {}
  • 字典元素的添加
scores={'张三':10,'李四':20,'王五':30}
print('原字典: ',scores)
scores['陈六']=40
print('添加陈六: ',scores)

执行结果:
原字典:  {'张三': 10, '李四': 20, '王五': 30}
添加陈六:  {'张三': 10, '李四': 20, '王五': 30, '陈六': 40}
  • 字典元素的修改
scores['陈六']=100
print('修改陈六的值为100: ',scores)

执行结果:
修改陈六的值为100:  {'张三': 10, '李四': 20, '王五': 30, '陈六': 100}
上一篇:异常检测算法:LOF算法(Local Outlier Factor)的python代码实现


下一篇:Java中的一个类型转换问题