python基础(5)字典「建议收藏」

python基础(5)字典「建议收藏」字典字典的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': '成功'}

 

补充知识

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

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

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

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


相关推荐

  • axios上传文件以及遇到的问题

    axios上传文件以及遇到的问题axios上传文件以及遇到的问题1,这里上传文件使用的是elementUI的上传,也用原生的input上传写了,但是没有时间做多文件上传,下面会把代码贴出。2,这里上传文件我是先获取OSS权限和上传路径,然后再上传。但是权限获取成功后,上传到阿里云服务器时,OPTION请求报403。原因是项目中axios设置了拦截器,添加了config配置,但是在axios发送OPTION测试接口是否有权限访…

    2022年6月17日
    332
  • 用JAVA判断一个数是否为素数(质数)

    素数(primenumber)又称质数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数。有时经常遇到用java判断素数的问题,为大家贴上怎么用java判断出一个数是否为素数。publicstaticbooleanisPrime(intN){if(Nfor(inti=2;i*iif(N%i=

    2022年4月12日
    248
  • initramfs-kernel_ubuntu initramfs

    initramfs-kernel_ubuntu initramfsLinux系统启动时使用initramfs(initramfilesystem),initramfs可以在启动早期提供一个用户态环境,借助它可以完成一些内核在启动阶段不易完成的工作。当然initramfs是可选的,Linux中的内核编译选项默认开启initrd。在下面的示例情况中你可能要考虑用initramfs。加载模块,比如第三方driver定制化启动过程(比如打印welcomeme…

    2022年8月11日
    9
  • dns服务器地址为空,dns服务器地址为空

    dns服务器地址为空,dns服务器地址为空dns服务器地址为空内容精选换一换在执行基本配置操作前,以root用户登录云服务器。在配置内网DNS后,弹性云服务器可以通过虚拟私有云的内网访问相关云服务,能够为用户提供更稳定、可靠的网络环境。配置DNS需要配置“/etc”目录下的resolv.conf文件,指定DNS服务器的IP地址。内网DNS服务器的IP地址与用户所处的区域相关,用户可通过表1获取内网DNS服务器的I内网下载镜像失败基本上都…

    2022年5月16日
    56
  • pandas astype()错误[通俗易懂]

    pandas astype()错误[通俗易懂]由于数据出现错误DataError:Nonumerictypestoaggregate改正以后才认识到astype的重要性。Top15[‘populations’]=Top15[‘EnergySupply’].div(Top15[‘EnergySupplyperCapita’]).astype(float)df_mean=((df.set_ind…

    2022年5月15日
    51
  • c++语言入门教程–16c++ 中的 String 类

    c++语言入门教程–16c++ 中的 String 类

    2021年3月12日
    162

发表回复

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

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