python字典可以存储任意类型的对象,字典的每个键:值 冒号(:)分割,每个对直接逗号(,)分割,整个字典包含在{}中,例如:d = {key1 : value1, key2 : value2, key3 : value3 }

注:键是唯一的,值不一定,值可以是任何类型对象,键必须是不可变的,如字符串、数字

eg:

定义两个字典:

dict1 = {'time':'2021/1/28'}
dict2 = {'名字':'张三','学历':'本科','年龄':'20'}
1、字典的访问,有两种方式,添加修改
dict[key]的方式:返回可以键对应的值,如果'key'不存在,会提示key error
dict.get('key',default=None):返回指定key的值,如果键不在字典中返回 default 设置的默认值 ,这个方式如果按python指定的格式dict.get(key,default='')的方式会踩雷出错,直接设置default的值或者不按默认反而不会出错,
dict。setdefaul(key,default=None):如果 key 在 字典中,返回对应的值。如果不在字典中,则插入 key 及设置的默认值 default,并返回 default ,default 默认值为 None。
关于 :get()和setdefault()这两者的区别:主要在于当查找的键值 key 不存在的时候,setdefault()函数会返回默认值并更新字典,添加键值;而 get() 函数只返回默认值,并不改变原字典。
运行结果情况如下:

2、字典的删除:del  方法和 pop 方法

del  方法:del dict[key] 删除key及值,

pop 方法:pop(key[,default]) :删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。如果要删除的 key 不存在,则需要添加默认值,否则会报错

3、字典的其他应用:

  • 字典的删除:原始:dict1: {'time': '2021/1/28', 'date': '2021/1/29'}
dict1.clear() # 删除字典内所有元素
print(len(dict1),dict1) # 删除后的字典元素个数,字典
运行结果:0 {}
  • 字典的浅复制和直接复制,二者区别:

直接赋值:浅拷贝,会随这赋值的字典的修改而修改

dict.copy()的方法: 深拷贝父对象(一级目录),不拷贝子对象(二级目录)只是引用

  • fromkeys()函数创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。语法:

    dict.fromkeys(seq[, value]), 返回一个新的字典
    • seq -- 字典键值列表。
    • value -- 可选参数, 设置键序列(seq)对应的值,默认为 None。

  • key in dict :

    字典 in 操作符用于判断键是否存在于字典中,如果键在字典 dict 里返回 true,否则返回 false。

    而 not in 操作符刚好相反,如果键在字典 dict 里返回 false,否则返回 true。

  • items()方法语法:以列表返回可遍历的(键, 值) 元组数组,可以用list()来转换为列表
  • keys()方法语法:返回一个可迭代对象,可以使用 list() 来转换为列表。
  • values() 方法返回一个迭代器,可以使用 list() 来转换为列表,列表为字典中的所有值。
  • update() 函数把字典参数 dict2 的 key/value(键/值) 对更新到字典 dict 里。

python 字典的用法,访问、增删合并等的更多相关文章

  1. 【Python—字典的用法】创建字典的3种方法

    #创建一个空字典 empty_dict = dict() print(empty_dict) #用**kwargs可变参数传入关键字创建字典 a = dict(one=1,two=2,three=3) ...

  2. python字典操作用法总结

    基本语法: dict = {'ob1':'computer', 'ob2':'mouse', 'ob3':'printer'} 技巧: 字典中包含列表:dict={'yangrong':['23',' ...

  3. 【Python—字典的用法】找到多个字典的公共键

    有 a,b,c,d,e,f 6名球员,他们在三轮比赛中的进球数用 s1,s2,s3 3个字典表示,找到每轮都有进球的球员? 创建 s1,s2,s3 3个字典素材 from random import ...

  4. Python字典 你必须知道的用法系列

    本文Python版本为3.7.X,阅读本文之前需了解python字典的基本用法. 介绍 字典(dict)是Python中内置的一个数据结构,由多个键值对组成,键(key)和值(value)用冒号分隔, ...

  5. python字典(dictionary)使用:基本函数code实例,字典的合并、排序、copy,函数中*args 和**kwargs做形参和实参

    python字典dictionary几个不常用函数例子 一.字典声明 如,d={}; d= {'x':1,'b':2} d1 = dict(x=1,y=2,z=3)     d2 = dict(a=3 ...

  6. python集合与字典的用法

    python集合与字典的用法 集合: 1.增加  add 2.删除   •del 删除集合 •discard(常用)删除集合中的元素  #删除一个不存在的元素不会报错 •remove 删除一个不存在的 ...

  7. Python dictionary 字典 常用法

    Python dictionary 字典 常用法 d = {} d.has_key(key_in)       # if has the key of key_in d.keys()          ...

  8. python 字典dict和列表list的读取速度问题, range合并

    python 字典和列表的读取速度问题 最近在进行基因组数据处理的时候,需要读取较大数据(2.7G)存入字典中,然后对被处理数据进行字典key值的匹配,在被处理文件中每次读取一行进行处理后查找是否在字 ...

  9. Python字典增删操作技巧简述

    Python编程语言是一款比较容易学习的计算机通用型语言.对于初学者来说,首先需要掌握的就是其中的一些基础应用.比如今天我们为大家介绍的Python字典的相关操作,就是我们在学习过程中需要熟练掌握的技 ...

随机推荐

  1. Python获取网页html代码

    获取网页html代码: import requests res = requests.get('https://www.cnblogs.com/easyidea/p/10214559.html') r ...

  2. Linux 路由 策略路由

    Linux 路由 策略路由 目录 Linux 路由 策略路由 一.路由表 编辑路由表配置文件:/etc/iproute2/rt_tables添加删除修改路由表 二.IP策略 查看IP策略 添加IP策略 ...

  3. JS function 是函数也是对象, 浅谈原型链

    JS function 是函数也是对象, 浅谈原型链 JS 唯一支持的继承方式是通过原型链继承, 理解好原型链非常重要, 我记录下我的理解 1. 前言 new 出来的实例有 _proto_ 属性, 并 ...

  4. TurtleBot3使用课程-第二节a(北京智能佳)

    目录 1.[第3类]LRF(LDS)传感器 2 1.1 传感器包安装 2 1.1.1 传感器端口访问设置 2 1.1.2 运行hlds_laser_publisher节点 2 1.1.3 在RViz中 ...

  5. 自定义 简单 底部tab

    项目地址:https://gitee.com/jielov/music-netease-api.git 先创建三个页面 分别为 home.vue , classify.vue, my.vue . 以下 ...

  6. [ABP教程]第五章 授权

    原文档 地址: Web Application Development Tutorial - Part 5: Authorization 关于此教程 在这个教程系列中,您将构建一个基于ABP的Web应 ...

  7. 温故而知新--day1

    温故而知新--day1 变量类型 变量是计算机存储数据的内存空间,由于计算机可以处理不同的数据,不同的数据就要定义不同的数据类型.python的数据类型很多,还可以自定义数据类型,常用的一般数据类型有 ...

  8. Solon rpc 之 SocketD 协议 - 消息上报模式

    Solon rpc 之 SocketD 协议系列 Solon rpc 之 SocketD 协议 - 概述 Solon rpc 之 SocketD 协议 - 消息上报模式 Solon rpc 之 Soc ...

  9. JS navigator.userAgent

    var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > - ...

  10. 【Oracle】删除表空间

    删除表空间如果是 SQL> DROP TABLEPSACE XXXX; 是无法将数据文件一同都删除的 想要删除表空间和数据文件需要如下操作: SQL> drop tablespace XX ...