python字典详解_python字典get方法

python字典详解_python字典get方法字典字典的key和value一一对应的,字典是可变的,也是有序的(python3.6版本开始字典有序),可迭代的增加元素当key不存在时,直接赋值a={"status"

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

字典

字典的key和value一一对应的,字典是可变的,也是有序的(python3.6版本开始字典有序),可迭代的
 

增加元素

当key不存在时,直接赋值

a = {"status": 200}
a["message"] = "成功"
print(a)
>>> {'status': 200, 'message': '成功'}

 

删除元素

del 字典名[key]

a = {"status": 200, "message": "成功"}
del a["status"]
print(a)
>>> {'message': '成功'}

 

查看元素

当key存在时,字典[key]

a = {"status": 200, "message": "成功"}
print(a["status"])
>>> 200

 

get(key[, default])

a = {"status": 200, "message": "成功"}
print(a.get("status"))
>>> 200

 

字典的3个方法:keys、values、items

a = {"status": 200, "message": "成功"}
print(a.keys())
print(a.values())
print(a.items())
>>> dict_keys(['status', 'message'])
        dict_values([200, '成功'])
        dict_items([('status', 200), ('message', '成功')])

# 直接获取字典中的key和value可以使用以下方法
a = {"status": 200, "message": "成功"}
for key, value in a.items():
    print(key, value)
>>> status 200
        message 成功

 

zip函数

zip()函数将两个可迭代对象打包成元组

print(dict(zip([101, 102, 103], ['张三', '李四', '王五'])))
>>> {101: '张三', 102: '李四', 103: '王五'}

 

字典推导式

a = {"status": 200, "message": "成功"}
print({k: v for k, v in a.items()})
>>> {'status': 200, 'message': '成功'}

 

补充知识

字典中,setdefault与get的区别
get 和setdefault区别是在于这个key不存在然后对字典是否造成影响(是否添加新的键值对)

  • setdefault:如果key值不存在,那么会把这个键值对添加到字典中
  • get:如果key不存在,那么对dict无任何影响
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/165503.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MySQL清空表数据

    MySQL清空表数据清空表数据一共有三种方式1、truncate(速度很快)自增字段清空从1开始全表清空首选2、drop直接删表…啥都没了啥都没了…………3、delete速度慢的一批自增字段不清空MySQL清空表数据命令:truncate说明:删除内容、释放空间但不删除定义,也就是数据表的结构还在。与drop不同的是,它只是清空表数据而已,它比较温柔。truncatetable表名注意:不能与where一起使用。truncate删除数据后是不可以rollback

    2022年6月14日
  • JavaDoc的生成规则—ShinePans

    JavaDoc的生成规则—ShinePans

    2022年1月26日
  • maven编译 Process terminated【已解决】

    maven编译 Process terminated【已解决】maven项目编译报错如下:点击【项目名】提示点击蓝色报错的链接,在idea中打开了settings文件,找到提示的报错位置最后发现是缩进或者空格不对导致该问题,建议在notepa++中复制粘贴过来就好了…

    2022年4月27日
  • JSP技术简介

    JSP技术简介1JSP技术的特征JSP技术所开发的web应用程序是基于Java的,它拥有Java跨平台的特性,以及业务代码分离,组建重用,基础Javaservlet功能和预编译功能。1)跨平台由于JSP是基于Java语言的,因而它可以使用Java的API,所以也是跨平台的,可以应用在Windows、Linux、Mac和Solaris。2)业务代码分离…

    2022年6月28日
  • linux使用docker_docker bash

    linux使用docker_docker bash安装命令sudoaptinstalldocker.io查看安装sudodocker–version添加用户到docker组sudogpasswd-a$USERdocker重启dockersudosystemctlrestartdocker查看状态sudodockerps-a查看镜像sudodockerimages创建容器dockerrun-it–nameubuntu1ubuntudockerrun-…

    2022年9月17日
  • 简述面向对象思想_简述面向对象程序设计的特点

    简述面向对象思想_简述面向对象程序设计的特点简述Java中的面向对象(OOP)思想Java是一种面向对象的语言,那么什么是面向对象(ObjectOrientedProgramming)?首先,什么是对象(Object)?Java中有一种

    2022年8月5日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号