前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python 字典

python 字典

作者头像
py3study
发布2020-01-17 11:31:13
1.6K0
发布2020-01-17 11:31:13
举报
文章被收录于专栏:python3python3

一、什么是字典

  字典是一种可变容器模型,且可存储任意类型对象。字典的每个键值对(key->value)用冒号“:”分割,每个键值对之间用逗号“,”分割,整个字典包括在花括号“{}”中

  注意:键必须使用不可变类型即整形、字符串、元组

二、字典的基本操作

1.增加

代码语言:javascript
复制
1 dic = {'name':'tom'}
2 dic['age'] = 18
3 print(dic)

>>> {'name': 'tom', 'age': 18}

2.修改

代码语言:javascript
复制
1 dic = {'name':'tom'}
2 dic['name'] = 18
3 print(dic)

>>> {'name': 18}

3.  .setdefault() 操作

代码语言:javascript
复制
1 dic = {'name':'tom'}
2 dic['age'] = 18
3 print(dic)
4 
5 # 键存在则不进行操作,并把原有的值作为返回值;键不存在,则增加
6 dic.setdefault('age', '34')  
7 
8 print(dic)

>>> {'name': 'tom', 'age': 18}

       {'name': 'tom', 'age': 18}

4.输出字典的键

代码语言:javascript
复制
1 dic = {'name':'tom', 'age':'22', 'hobby':'ss'}
2 print(dic.keys())   #输出字典的键
3 print(list(dic.keys()))   #以列表的形式输出字典的键
4 print(list(dic.values())) #以列表形式输出字典键所对应的值

输出:dict_keys(['name', 'age', 'hobby'])

          ['name', 'age', 'hobby']

          ['tom', '22', 'ss']

5.字典的更新( .update() )

代码语言:javascript
复制
1 dic1 = {'name':'tom', 'age':'22', 'hobby':'ss'}
2 dic2 = {'name':'tom', 'age':'12', 'hobby':'小可爱'}
3 print(dic1)
4 dic1.update(dic2)  #把dic2的内容更新到dic1中
5 print(dic1)

输出: {'name': 'tom', 'age': '22', 'hobby': 'ss'}

            {'name': 'tom', 'age': '12', 'hobby': '小可爱'}

6.删除键值对

代码语言:javascript
复制
 1 dic1 = {'name':'tom', 'age':'12', 'hobby':'小可爱'}
 2 dic2 = {'name':'tom', 'age':'12', 'hobby':'小可爱'}
 3 del dic1['name']    #删除指定键值对
 4 print(dic1)
 5 
 6 ret = dic1.pop('age')    #删除指定键值对,并返回键值所对应的值
 7 print(ret)
 8 print(dic1)
 9 
10 a = dic2.popitem()    #随机删除某个键值对,并以元组方式返回
11 print(a,dic2)

输出: {'age': '12', 'hobby': '小可爱'}

      12

      {'hobby': '小可爱'}

      ('hobby', '小可爱') {'name': 'tom', 'age': '12'}

7.清空和删除整个字典

代码语言:javascript
复制
1 dic = {'name':'tom', 'age':'12', 'hobby':'小可爱'}
2 dic.clear()   #清空字典
3 print(dic)
4 
5 del dic   # 删除整个字典

输出结果: {}

8.字典的嵌套

代码语言:javascript
复制
 1 dic_nate = {
 2     "欧美":{
 3         "www.123.com":["质量一般","免费"],
 4         "www.234.com":["质量一般","高清"],
 5         "www.345.com":["质量优","收费,屌丝绕路"]
 6     },
 7     "日韩":{
 8         "www.456.com":["质量优","免费"]
 9     },
10     "大陆":{
11         "www.567.com":["质量差","网速慢"]
12     }
13 }
14 
15 dic_nate['欧美']["www.234.com"][1] = '垃圾'  # 修改键值
16 print(dic_nate)

输出结果:

  {'欧美': { 'www.123.com': ['质量一般', '免费'],

        'www.234.com': ['质量一般', '垃圾'],

        'www.345.com': ['质量优', '收费,屌丝绕路']},

  '日韩': {'www.456.com': ['质量优', '免费']},

  '大陆': {'www.567.com': ['质量差', '网速慢']}}

9.字典的遍历

代码语言:javascript
复制
1 dic = {'name':'tom', 'age':'12', 'hobby':'小可爱'}
2 
3 for n in dic:
4     print(n) #输出键
5     print(n, dic[n]) #输出键和键值

输出:name

     name tom

     age 

     age 12

     hobby

     hobby 小可爱

代码语言:javascript
复制
1 dic = {'name':'tom', 'age':'12', 'hobby':'小可爱'}
2 
3 for n,m in dic.items():  #用两个变量分别接收键和键值
4     print(n, m)

输出结果:name tom

     age 12

       hobby 小可爱

代码语言:javascript
复制
1 a = eval(a)    #转换成字典类型
代码语言:javascript
复制
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、什么是字典
  • 二、字典的基本操作
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档