1、字典增

#字典增
dic = {'name': '大白', 'age': 20}
dic['hight'] = 180 #没有键值对,添加
dic['age'] = 18 #有键值对,覆盖
print(dic)
#{'name': '大白', 'age': 20, 'hight': 180}
#{'name': '大白', 'age': 18

#setdefault

dic = {'name': '大白', 'age': 20}
dic.setdefault('weight',150)# 没有height此键,则添加
print(dic)#{'name': '大白', 'age': 20, 'weight': 150}
dic.setdefault('name',150)# 有此键则不变
print(dic)#{'name': '大白', 'age': 20}

2、字典删

dic = {'name': '大白', 'age': 20}
print(dic.pop('age'))#20(有返回值)
print(dic.pop('hight','没有此键'))#没有此键
print(dic)#{'name': '大白'} #popitem 3.5版本之前,popitem为随机删除,3.6之后为删除最后一个,有返回值
dic = {'name': '大白', 'age': 20}
dic.popitem()
print(dic)#{'name': '大白'} #clear 清空字典
dic = {'name': '大白', 'age': 20}
dic.clear()
print(dic) # {}

# del
# 通过键删除键值对

dic = {'name': '大白', 'age': 20}
del dic['name']
print(dic) # {'age': 20}
#删除整个字典
del dic

3、字典改

#update
dic1 = {'name':'jin','age':18,'sex':'mal'}
dic2 = {'name':'alex','weight':75}
dic1.update(dic2)#将2更新到1里
print(dic1) # {'name': 'alex', 'age': 18, 'sex': 'male', 'weight': 75}
print(dic2) # {'name': 'alex', 'weight': 75}

4、字典查

#keys()查键
dic = {'name': '大白', 'age': 20}
print(dic.keys()) # dict_keys(['name', 'age']) #values()查键值
dic = {'name': '大白', 'age': 20}
print(dic.values()) #dict_values(['大白', 20]) #items()查键值对
dic = {'name': '大白', 'age': 20}
print(dic.items()) #dict_items([('name', '大白'), ('age', 20)]) for i in dic.items():
print(i)
# ('name', '大白')
# ('age', 20)
for i,j in dic.items():
print(i,j)
# name 大白
# age 20
#get
dic = {'name': '大白', 'age': 20}
print(dic.get('age'))#
print(dic.get('hight'))#(若无)None
 
 

4、dict嵌套

dic = {'name':['大白','python','小白'],
'py9': {'num': 71, 'age': 18},
True: 1,
(1, 2, 3): '',
2: '白鸽', }
dic['name'][1]=dic['name'][1].upper()#将'name'中‘python'大写
dic['py9']['female'] = 6#将'female':6添加到'py9'中
print(dic)

python 基础知识4 - 字典的更多相关文章

  1. Python基础知识(五)------字典

    Python基础知识(四)------字典 字典 一丶什么是字典 ​ dict关键字 , 以 {} 表示, 以key:value形式保存数据 ,每个逗号分隔 ​ 键: 必须是可哈希,(不可变的数据类型 ...

  2. Python基础知识:字典

    1.字典中键-值为一对,keys()返回一个列表,包含字典中所有键,values()返回所有值 favorite_languages ={ 'jack':"python", 'al ...

  3. python基础知识三 字典-dict + 菜中菜

    3.7字典:dict+菜中菜 1.简介 ​ 无序,可修改,用于存储数据,大量,比列表快,将数据和数据之间关联 ​ 定义:dict1 = {'cx':10,'liwenhu':80,'zhangyu': ...

  4. python基础知识(字典)

    创建字典 变量名 = {key:value,.....} zip()    转换为zip对象 空字典 变量名 = {} 变量名 = dict(key = value,....) 创建只有键的字典 fr ...

  5. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  6. python 基础知识(一)

    python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...

  7. python 爬虫与数据可视化--python基础知识

    摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...

  8. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  9. Python基础知识(五)

    # -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...

随机推荐

  1. 基于spring的安全管理框架-Spring Security

    什么是spring security? spring security是基于spring的安全框架.它提供全面的安全性解决方案,同时在Web请求级别和调用级别确认和授权.在Spring Framewo ...

  2. pytorch 文本情感分类和命名实体识别NER中LSTM输出的区别

    文本情感分类: 文本情感分类采用LSTM的最后一层输出 比如双层的LSTM,使用正向的最后一层和反向的最后一层进行拼接 def forward(self,input): ''' :param inpu ...

  3. Java 多线程 -- volatile 山寨版的synchronized

    在 多线程中,每个线程会把数据从主内存中拷贝到自己的工作内存中,当线程完成计算后,再把工作内存的数据更新到主内存中,或者当主内存主数据有更新是,线程会去主内存取最新数据.但是,当线程特别忙时,就不会去 ...

  4. 双系统情况下,ubuntu开机挂载Windows分区

    首先:blkid,查看分区所属uuid 其中 /dev/sda5 就是Windows分区 其次:fdisk -l,查看分区情况 通过硬盘大小找到对应要设置的具体分区(其实这步也不用,我只是为了确定) ...

  5. SVN部署(Centos7,Ubuntu)

    SVN 简介 SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很多版本控制服务已从CVS迁移到Sub ...

  6. apt 安装 版本

    1. 通过apt-get安装指定版本软件 apt-get install package=version 2. 查询指定软件有多少个版本 2.1 通过网站搜索https://packages.ubun ...

  7. 使用VSCode连接到IBM Cloud区块链网络

    文章目录 从IBM Cloud控制面板导出连接信息 在VSCode中创建gateway和wallet 在VSCode中提交transaction 上篇文章我们讲到怎么在IBM Cloud搭建区块链环境 ...

  8. AndroidStudio提高编译速度的建议

    1.使用最新的Android gradle插件 Google tools team一直致力于提高android studio的编译速度,使用最新的gradle插件可以搞编译速度 在Android Gr ...

  9. ROC-RK3328-CC开源主板运行LibreELEC系统

    LibreELEC是运行Kodi媒体中心的轻量级操作系统,基于Linux内核发行,系统为适配Kodi运行环境,做了许多优化和精简,运行速度快,操作简单.是一款很优秀的多功能播放器操作系统. ROC-R ...

  10. 负载均衡服务之HAProxy https配置、四层负载均衡以及访问控制

    前文我们聊了下haproxy的访问控制ACL的配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12817773.html:今天我们来聊一聊haproxy的h ...