ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

040 字典类型及操作

2021-04-16 08:55:03  阅读:258  来源: 互联网

标签:返回 映射 类型定义 键值 类型 040 字典


目录

  • 一、概述
  • 二、字典类型定义
    • 2.1 理解“映射”
    • 2.2 字典类型定义
    • 2.3 字典类型的用法
    • 2.4 字典类型定义和使用
  • 三、字典处理函数及方法
    • 3.1 字典类型操作
    • 3.2 字典类型操作函数和方法
    • 3.3 字典功能默写
  • 四、字典类型应用场景
    • 4.1 映射的表达
    • 4.2 元素遍历
  • 五、单元小结


一、概述

  • 字典类型定义
  • 字典处理函数及方法
  • 字典类型应用场景

二、字典类型定义

2.1 理解“映射”

  • 映射是一种键(索引)和值(数据)的对应

040-字典类型及操作-01.jpg?x-oss-process=style/watermark

序列类型由0..N整数作为数据的默认索引 映射类型则由用户为数据定义索引

2.2 字典类型定义

字典类型是“映射”的体现

  • 键值对:键是数据索引的扩展
  • 字典是键值对的集合,键值对之间无序
  • 采用大括号{}和dict()创建,键值对用冒号: 表示

{<键1>:<值1>, <键2>:<值2>, … , <键n>:<值n>}

2.3 字典类型的用法

在字典变量中,通过键获得值

<字典变量> = {<键1>:<值1>, … , <键n>:<值n>}

<值> = <字典变量>[<键>]

<字典变量>[<键>] = <值>

[ ] 用来向字典变量中索引或增加元素

2.4 字典类型定义和使用

d = {"中国": "北京", "美国": "华盛顿", "法国": "巴黎"}
d
{'中国': '北京', '美国': '华盛顿', '法国': '巴黎'}
d['中国']
'北京'
de = {}
type(de)
dict

三、字典处理函数及方法

函数或方法描述
del d[k]删除字典d中键k对应的数据值
k in d判断键k是否在字典d中,如果在返回True,否则False
d.keys()返回字典d中所有的键信息
d.values()返回字典d中所有的值信息
d.items()返回字典d中所有的键值对信息

3.1 字典类型操作

d = {"中国":"北京", "美国":"华盛顿", "法国":"巴黎"}
"中国" in d
True
d.keys()
dict_keys(['中国', '美国', '法国'])
d.values()
dict_values(['北京', '华盛顿', '巴黎'])

3.2 字典类型操作函数和方法

函数或方法描述
d.get(k,键k存在,则返回相应值,不在则返回
d.pop(k,键k存在,则取出相应值,不在则返回
d.popitem()随机从字典d中取出一个键值对,以元组形式返回
d.clear()删除所有的键值对
len(d)返回字典d中元素的个数
d = {"中国":"北京", "美国":"华盛顿", "法国":"巴黎"}
d.get("中国","伊斯兰堡")
'北京'
d.get("巴基斯坦","伊斯兰堡")
'伊斯兰堡'
d.popitem()
('法国', '巴黎')

3.3 字典功能默写

  • 定义空字典d

  • 向d新增2个键值对元素

  • 修改第2个元素

  • 判断字符"c"是否是d的键

  • 计算d的长度

  • 清空d

  • d = {}

  • d["a"] = 1; d["b"] = 2 * d["b"] = 3

  • "c" in d

  • len(d)

  • d.clear()

四、字典类型应用场景

4.1 映射的表达

  • 映射无处不在,键值对无处不在
  • 例如:统计数据出现的次数,数据是键,次数是值
  • 最主要作用:表达键值对数据,进而操作它们

4.2 元素遍历

for k in d:
    <语句块>

五、单元小结

  • 映射关系采用键值对表达
  • 字典类型使用{}和dict()创建,键值对之间用:分隔
  • d[key] 方式既可以索引,也可以赋值
  • 字典类型有一批操作方法和函数,最重要的是.get()

标签:返回,映射,类型定义,键值,类型,040,字典
来源: https://blog.51cto.com/u_13804357/2709911

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有