字典特点

字典是python中最常用的数据类型,主要的特点如下:

1.字典的关键字:dict    字典一般是用"{}"花括号括起来的

2.字典是无序的数据类型

3.字典的可以存储任意数据类型(例如:字典,列表,元组,数字,字符串,集合,布尔值)

4.字典的元素可以更改,但是如果包含的数据类型是元组,则元组里面的数据是不能进行更改,只能整体替换

5.字典的元素是按照key-value键值对的形式存在的,key和value之间是用 ":" 冒号隔开,每个键值对之间是用,逗号隔开,整个字典是用{}包括起来

6.key的值是唯一且不可变的数据类型,例如:元组,数字,字符串,布尔值,浮点数     如果key值存在重复,那最后一个键值对会替换前面的

7.字典的取值,是根据key进行取值,因为字典是无序的数据类型,所以不能使用索引进行取值,只有列表,元组才可以使用索引取值(有索引,就代表是有序的)

字典的常用操作

1.定义一个空的字典方法

dict={}

2.创建一个字典

dict={"name":"小张",1:"你好",0.2:[1,2,3],False:"学习",(2,3,4):9.8}   ------->(不同类型的数据,key是唯一且不可变类型,value可以是任意类型的)

3.字典的取值

取值单个元素:字典的取值是根据key来取的,例如:dict["name"],   输出结果为:小张               取值方法:字典名[key]

for循环取值:还可以通过for循环去进行元素遍历取值     方法如下:

for value in dict.valuse():

print(value)

4.字典的长度

如果想求字典的长度,可以使用len()内置函数          使用方法: len(dict)

字典的常用方法:

新增元素:dict[new_key]=new_value

删除元素:dict.pop[key_value]

修改元素的值:dict[old_key]=new_value

**修改元素和新增元素的区别,修改是将旧的key值,赋予新的value,新增是创建一个新的key值,赋予新的value

字典常用的内置函数

1.len()     使用方法:len(dict)    计算字典的元素个数,也就是键的总数

2.str()     使用方法:str(dict)     输出字典可打印的字符串格式,也就是将字典转换为字符串类型

3.type()  使用方法:type(dict)  返回变量的类型,如果是字典格式的,那返回的数据类型为dict

eg:

例如:

1 aa={True:"nihao",False:"LIHAI"}

2 print(aa[True],aa[False])

3 print(type(str(aa)))

4 print(len(aa))

输出结果:

nihao LIHAI #打印的为字典的单个值

#输出的为输入的变量类型

2 #输出的为字典的长度

字典常用的内置方法

1.dict.clear()   删除字典内所有元素

2.dict.pop(key,default)   删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

3.dict.popitem()   随机删除字典中的某个键值对

4.dict.get(key,default=None)     返回指定键的值,如果改值不在字典中,默认返回None

(参数解释:

key -- 字典中要查找的键。

default -- 如果指定键的值不存在时,返回该默认值。

)

5.dict.keys()   以列表返回字典中的所有key值     输出格式:将所有的key值存放在一个列表中,最后以元组输出

6.dict.values()  以列表返回字典中的所有value值     输出格式,将所有的value值存放在一个列表中,最后以元组输出

7.dict.items()   以列表返回可遍历的(键,值)元组数组     输出格式,将每一对key和value组成一个元组,再将这些数据存放在列表中,最后以元组输出

eg:

1 实例:2 data={"name":"小张",1:"你好",0.2:[1,2,3],False:"学习",(2,3,4):9.8}3 print(data.items())4 print(data.values())5 print(data.keys())6 print(data.get((2,3,4)))7 data.pop(0.2)8 print(data)9 data.popitem()10 print(data)11 data.clear()12 print(data)

14 输出结果:15 dict_items([(‘name‘, ‘小张‘), (1, ‘你好‘), (0.2, [1, 2, 3]), (False, ‘学习‘), ((2, 3, 4), 9.8)])16 dict_values([‘小张‘, ‘你好‘, [1, 2, 3], ‘学习‘, 9.8])17 dict_keys([‘name‘, 1, 0.2, False, (2, 3, 4)])18 9.8

19 {‘name‘: ‘小张‘, 1: ‘你好‘, False: ‘学习‘, (2, 3, 4): 9.8}20 {‘name‘: ‘小张‘, 1: ‘你好‘, False: ‘学习‘}21 {}

字典中几种常用的取值方式:

from jsonpath importjsonpath#取出小蓝

user_data={"user":"小红","name":{"年龄":18,"sex":{"hh":"aa","name":"小蓝"}}}#使用jsonpath取值

e=jsonpath(user_data,"$..sex")[0]["name"]print(e)#使用一层一层取值

e1=user_data["name"]["sex"]["name"]print(e1)#用for循环取值

for value inuser_data.values():if value=={‘年龄‘: 18, ‘sex‘: {‘hh‘: ‘aa‘, ‘name‘: ‘小蓝‘}}:print(value["sex"]["name"])#使用get的方式取值

e2=user_data.get("name")["sex"]["name"]print(e2)#取出字典所有的keys和values,items(),以列表返回可遍历的(键,值)元组数组,然后通过索引进行取值

e3=user_data.items()print(type(e3))print(list(e3)[1][1]["sex"][‘name‘])#取出所有的value值,然后取出对应的值

e4=user_data.values()print(list(e4)[1]["sex"]["name"])

python中字典详解

python中字典教程_python中字典详解相关推荐

  1. python菜单怎么做_Python 城市菜单详解(超详解)

    print("--------城市查询系统---------") print("--------按数值进行查询--------") menu={"内蒙 ...

  2. python中递归函数写法_python递归函数用法详解

    上期我们介绍了函数式编程,这期内容就是关于递归的函数内容,本期还是按照老规矩,给大家进行核心整理,内容通俗易懂,搭配实际应用,以供大家理解. 关于递归: 百度解释:是指函数/过程/子程序在运行过程序中 ...

  3. python向量计算库教程_python中numpy基础学习及进行数组和矢量计算

    前言 在python 中有时候我们用数组操作数据可以极大的提升数据的处理效率,类似于R的向量化操作,是的数据的操作趋于简单化,在python 中是使用numpy模块可以进行数组和矢量计算. 下面来看下 ...

  4. python指定变量类型_Python 变量类型详解

    变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据类型,这些变量可以存储整 ...

  5. python集合的操作_Python集合操作方法详解

    集合是无序的,天生不重复的数据组合,它的作用如下: 去重,即:把一个列表变成集合,就去重了 关系测试,即:测试两组集合的交集.并集和差集等 一.集合常用方法总结 二.定义 1.语法 >>& ...

  6. python怎么看内置模块_Python的内置模块详解

    一.什么是模块 模块就是封装了一些列功能的py文件,我们使用的时候直接导入这个文件,通过传入参数的方式使用其他文件的功能函数 二.模块有哪些 内置模块 自定义模块 第三方模块 三.如何导入模块 导入模 ...

  7. python文件输入符_python基础入门详解(文件输入/输出 内建类型 字典操作使用方法)...

    一.变量和表达式 >>> 1 + 1 2 >>> print 'hello world' hello world >>> x = 1 >&g ...

  8. python函数自定义教程_Python中自定义函数的教程

    在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回. 我们以自定义一个求绝对值的my_abs函数 ...

  9. python matplotlib模块教程_Python中的Matplotlib模块入门教程

    1 关于 Matplotlib 模块 Matplotlib 是一个由 John Hunter 等开发的,用以绘制二维图形的 Python 模块.它利用了 Python 下的数值计算模块 Numeric ...

  10. python中三元运算符_python 三元运算符详解

    python是没有三元描述符的,但是可以通过模拟的实现. 其中一种是: (X and V1) or V2 正常情况下是不会有错误的,但是文章中也提到了,当V1=""时,就会有问题 ...

最新文章

  1. Sharepoint 2007 定制Feature和卸载Feature
  2. ug10许可证错误一8_落实管理要求 做好证后监管——江西省南昌市开展排污许可证后监管探索与实践...
  3. DeeoID:Deep learning face representation from predicting 10,000 classes
  4. 感情沟通出了问题要怎么解决_对待感情最理性的星座,懂得如何沟通,会想办法解决问题...
  5. SpringBoot开发第一个Web入门级应用(超详细)
  6. java strategy模式,Java Strategy 模式简介
  7. Sublime Text 2快捷键大全
  8. java中的基本数据类型_Java中的基本数据类型和引用数据类型
  9. 潜在语义分析原理以及python实现代码!!!!
  10. 一文说透WordPress的自定义文章类型
  11. PHP Socket编程起步
  12. linux运维必学python吗_Python学习资源整理
  13. 从load加载数据类型是struct说起
  14. Linux设置bypass网卡,Linux pwn入门教程(7)——PIE与bypass思路
  15. 落地干货:三个核心步骤,做好销售管理
  16. 注意:QQ空间加密并不安全
  17. 014基于SSH航空订票系统air
  18. webpack-图片配置
  19. 沙盒在源代码防泄露领域的表现分析
  20. 全国优秀计算机动画作品,分享創意——全国中小学优秀电脑作品分析.ppt

热门文章

  1. 深度学习和拓扑数据分析的六大惊人之举
  2. 数据库的varchar长度的限制以及对性能是否有影响
  3. Mac 10.11下成功安装Wex5及文件扩展属性问题
  4. 读书笔记--精通CSS高级Web标准解决方案(一)---CSS基础
  5. 企业邮箱能设置个人昵称吗,如何设置?
  6. NYOJ 3(多边形重心)
  7. 在线编辑器XhEditor
  8. c语言变量命名规则_数据的来龙去脉——常量与变量
  9. Laravel 实现任务调度功能
  10. PHP报错:Warning: Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars