Python基础教程:字典(当索引不好用时)

Python基础教程:字典(当索引不好用时),第1张

概述一.定义与概念1.字典是针对非序列集合而提供的一种数据类型举例:检索学生信息。“<键><值>对”。键(即身份z号码)值(即学生信息)。“键值对”例子姓名和电话号码用户名和密码国家名称和首都等。通过任意键信息查找一组数据中值信息的过程叫映射,Python语言中通过字典实 一.定义与概念

1.字典是针对非序列集合而提供的一种数据类型

举例:检索学生信息。

“<键><值>对”。

键(即身份z号码) 值(即学生信息)。

“键值对”例子

姓名和电话号码

用户名和密码

国家名称和首都等。

通过任意键信息查找一组数据中值信息的过程叫映射,Python语言中通过字典实现映射。

Python语言中的字典可以通过大括号{ }建立,建立模式如下: {<键1>:<值1>, <键2>:<值2>, … , <键n>:<值n>} 其中,键和值通过冒号连接,不同键值对通过逗号隔开。 字典是键值对的无序可变集合。

字典中的每个元素包含两部分:键和值,向字典添加一个键的同时,必须为该键增添一个值。

字典中的键可以为任意不可变数据,比如整数、实数、复数、字符串、元组等等。

字典中的键不允许重复。

Dcountry={ "中国":"北京","美国": "华盛顿","法国":"巴黎"}print (Dcountry)#结果:{'法国':'巴黎','美国':'华盛顿','中国': '北京'}

字典打印出来的顺序与创建之初的顺序不同,这不是错误。字典是集合类型的延续,各个元素并没有顺序之分。

字典主要的用法是查找与特定键相对应的值,通过索引符号来实现。

Dcountry["中国"] '北京'

一般来说,字典中键值对的访问模式如下,采用中括号格式: <值> = <字典变量>[<键>] 字典中对某个键值的修改可以通过中括号的访问和赋值实现:

Dcountry["中国"]='大北京'print(Dcountry) {'中国': '大北京', '法国': '巴黎', '美国': '华盛顿'}

2.字典类型与序列类型的区别:

存取和访问方式不同

键的类型不同 序列类型只能用数字类型的键(下标) 字典类型可以用其他对象类型作键

排列方式不同 序列类型保持了元素的相对关系 而字典中的数据是无序排列的

映射方式不同 序列类型通过地址映射到值 字典类型通过键直接映射到值

二.字典的 *** 作

1.创建于删除

使用=将一个字典赋值给一个变量

使用内置函数dict()利用已有数据创建字典

使用dict根据给定的键-值对创建字典 以给定内容为键,创建值为空的字典(fromkeys)

使用del删除整个字典

2.基本 *** 作方法

函数和方法描述
<d>.keys()返回所有的键信息
<d>.values()返回所有的值信息
<d>.items()返回所有的键值对
<d>.get(<key>,<default>)键存在则返回相应值,否则返回默认值;键存在则返回相应值,同时删除键值对,
<d>.pop(<key>,<default>)否则返回默认值
<d>.popitem()随机从字典中取出一个键值对,以元组(key, value)形式返回
<d>.clear()删除所有的键值对
del <d>[<key>]删除字典中某一个键值对
<key> in <d>如果键在字典中返回True,否则返回False

3.元素的读取

以键作为下标可以读取字典元素,若键不存在则抛出异常

使用字典对象的get方法获取指定键对应的值,并且可以在键不存在的时候返回指定值。

使用字典对象的items方法可以返回字典的键、值对列表

使用字典对象的keys方法可以返回字典的键列表

使用字典对象的values方法可以返回字典的值列表

4.元素的添加与修改

当以指定键为下标为字典赋值时,若键存在,则可以修改该键的值;若不存在,则表示添加一个键、值对。

使用字典对象的update方法将另一个字典的键、值对添加到当前字典对象

使用del删除字典中指定键的元素

使用字典对象的clear方法来删除字典中所有元素

使用字典对象的pop方法删除并返回指定键的元素

使用字典对象的popitem方法删除并返回字典中的任意一个元素

5.字典元素的遍历

与其他组合类型一样,字典可以通过for…in语句对其元素进行遍历,基本语法结构如下:

for <变量名> in <字典名>: 语句块

for key in Dcountry:	print(key)中国美国法国

遍历字典的键

key for key in dictionaryname.keys():        print(key)

遍历字典的值

value for value in dictionaryname.values():        print(value)

遍历字典的项

for item in dicitonaryname.items():        print(item)

遍历字典的键值对

key-value for key,value in dicitonaryname.items():         print(key, value)

字典是实现键值对映射的数据结构,请理解如下基本原则:

字典是一个键值对的集合,该集合以键为索引,一个键信息只对应一个值信息;

字典中元素以键为索引访问;

字典长度是可变的,可以通过对键信息赋值实现增加或修改键值对。

三. *** 作实例

1.首先生成包含1000个随机字符的字符串,然后统计每个字符的出现次数。

'''遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和pdf电子书!'''import stringimport randomx = string.ascii_lettersy = ''.join((random.choice(x) for i in range(1000)))d = dict()for ch in y:    d[ch] = d.get(ch,0)+1dd = sorted(d.items(), key=lambda item:item[1], reverse=True)#排序print(dd[:3])#打印出排名前三的

四.字典与Json的异同

发现字典和web前端中的Json有点像。接下来比较一下两者的异同。

字典结构:


Json数据形式:

{    "studentInfo":    {        "ID":123456,        "stu_name":"Dorra"    }}

从形式上看,都是“Key:Value”的形式。

但是从本质上讲,字典是一种数据结构,而Json是一种格式;字典有很多内置函数,有多种调用方法,而Json是数据打包的一种格式,并不像字典具备 *** 作性,并且是格式就会有一些形式上的限制,比如Json的格式要求必须且只能使用双引号作为key或者值的边界符号,不能使用单引号,而且“key”必须使用边界符(双引号),但字典就无所谓了。

Python中提供了Json.load()转换函数,方便Json数据的调用。

总结

以上是内存溢出为你收集整理的Python基础教程:字典(当索引不好用时)全部内容,希望文章能够帮你解决Python基础教程:字典(当索引不好用时)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1186370.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存