字典是通过名称来引用值的数据结构,这种类型的数据结构称为:映射。

  字典是python中唯一的内建映射类型。

注意:

  1、字典中键必须是唯一的,如果同一个键被赋值两次,会使用后一个值;

  2、键必须不可变,所以只能使用数字、字符串、元组,其他可变的不行。

字典常用的方法有

1、del:

  删除字典元素或字典

  1. #dict-del:删除字典元素或字典
  2. dict1={"name":"zhangsan",'age':20,'from':"china"}
  3. del dict1['age']
  4. print(dict1)
  5.  
  6. del dict1
  7. print(dict1)

2、len(dict)

  计算字典元素个数,即键的总数

  1. #字典长度
  2. dict={"name":"zhangsan","age":""}
  3. len(dict)

3、str(dict)

  以字符串的方式标识

  1. #转换为str
  2. dict1={'a':12,'b':123}
  3. str(dict1)

4、type(variable)

  返回输入的变量类型,如果变量是字典就会返回字典类型

5、dict.clear()

  删除字典中的所有内容

  1. #clear():删除字典中的所有元素
  2. dict1={'a':12,'b':123}
  3. print(dict1)
  4. dict1.clear()
  5. print(dict1)

6、dict.copy()

  返回一个字典的浅复制

  1. #copy:浅复制
  2. dict1={1:12,2:23,3:34}
  3. print(dict1)
  4. print(dict1.copy())

7、dict.fromkeys()

  创建一个新字典,以序列作为字典的键,val为字典所有键的初始值

  1. #fromkeys()
  2. lst=[1,2,3,1,2,3,1,2,3]
  3. dict1={}
  4. dict1.fromkeys(lst,"ab")
  5. print(dict1.fromkeys(lst,"ab"))

8、dict.get(key,default=Null)

  返回指定键的值,如果值不在字典中返回default的值

  1. #get:返回指定键的值
  2. dict1={'name':'zhangsan','age':22}
  3. print(dict1.get('age'))
  4. print(dict1.get('from'))

9、key in dict

  成员判断,如果key在dict中,返回true,否则返回false

  1. #in:成员判断
  2. dict1={'name':'zhangsan','age':22}
  3. print('age' in dict1)
  4. print('from' in dict1)

10、dict.items()

  以列表返回可遍历的(键值)元组数据

  1. #items()
  2. dict1={'name':'zhangsan','age':22}
  3. lst1=dict1.items()
  4. print(lst1)
  5. print(dict1.it)

11、dict.keys()

  以列表返回字典的所有键

  1. #keys:返回所有的键
  2. dict1={'name':'zhangsan','age':22}
  3. print(dict1.keys())

12、dict.setdefault(key,default=None)

  与get类似,但是如果键不存在与字典中,将会添加键并将值设置为default的值

  1. #setdefault:设置默认值
  2. dict1={'name':'zhangsan','age':22}
  3. dict1.setdefault('from',default=None)
  4. print(dict1)

13、dict1.update(dict2)

  把dict2的键/值更新到dict1中

  1. #update:更新
  2. dict1={'name':'zhangsan','age':22}
  3. dict2={'name1':'zhangsan','age1':22}
  4. dict1.update(dict2)
  5. print(dict1)

14、dict.values()

  以列表返回字典中的所有值

  1. #values:返回所有值
  2. dict1={'name':'zhangsan','age':22}
  3. print(dict1.values())

15、pop()

  用来获得对应于给定键的值,然后将这个键值对删除

  1. #pop
  2. dict1={'name':'zhangsan','age':22}
  3. print(dict1.pop("name"))
  4. print(dict1)

16、popitem()

  显示随机的项,表示删除

  1. #popitem
  2. dict1={'name':'zhangsan','age':22}
  3. print(dict1.popitem())
  4. print(dict1)

17、enumerate()

  可以得到索引位置和对应的值

python学习笔记:(七)dict(字典)常用的方法的更多相关文章

  1. 【python学习笔记】4.字典:当索引不好用时

    [python学习笔记]4.字典:当索引不好用时 字典是python中唯一内建的map类型 创建: key可以为任何不可改变的类型,包括内置类型,或者元组,字符串 通过大括号: phonebook={ ...

  2. python学习笔记之三:字典,当索引不好用时

    字典是python中唯一内建的映射类型.字典中的值并没有特殊的顺序,但是都存储在一个特定的键(key)里.键可以是数字,字符串甚至是元组. 1. 创建和使用字典 字典可以通过下面的方式创建: phon ...

  3. python学习笔记(三)-列表&字典

    列表: 一.列表操作"""Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素.比如,列出班里所有同学的名字,就可以用一 ...

  4. 吴裕雄--天生自然python学习笔记:Python3 OS 文件/目录方法

    os 模块提供了非常丰富的方法用来处理文件和目录.常用的方法如下表所示: 序号 方法及描述 1 os.access(path, mode) 检验权限模式 2 os.chdir(path) 改变当前工作 ...

  5. Python学习笔记:set集合类型所有方法汇总

    ################################################## 集合的作用是:# 1.获得两个集合之间某种关系的集合(比如求两个集合的交集)# 2.计算集合之间的 ...

  6. python学习笔记七——字典

    4.3 字典结构 字典是Python中重要的数据类型,字典的由“键-值”对组成的集合,字典中的“值”通过“键”来引用. 4.3.1 字典的创建 字典由一系列的“键-值”(key-value)对组成,“ ...

  7. Python学习笔记五:字符串常用操作,字典,三级菜单实例

    字符串常用操作 7月19日,7月20日 ,7月22日,7月29日,8月29日,2月29日 首字母大写:a_str.capitalize() 统计字符串个数:a_str.count(“x”) 输出字符, ...

  8. python学习笔记(三)、字典

    字典是一种映射类型的数据类型.辣么什么是映射呢?如果看过<数据结构与算法>这一本书的小伙伴应该有印象(我也只是大学学习过,嘻嘻). 映射:就是将两个集合一 一对应起来,通过集合a的值,集合 ...

  9. python学习笔记(13)常用模块列表总结

    os模块: os.remove() 删除文件 os.unlink() 删除文件 os.rename() 重命名文件 os.listdir() 列出指定目录下所有文件 os.chdir() 改变当前工作 ...

  10. python学习笔记(12)常用模块

    一.模块.包 什么是模块? 模块实质上就是一个python文件,它是用来组织代码的,意思就是说把python代码写到里面,文件名就是模块的名称,test.py test就是模块名称. 什么是包? 包, ...

随机推荐

  1. leetcode957. N 天后的牢房

    8 间牢房排成一排,每间牢房不是有人住就是空着. 每天,无论牢房是被占用或空置,都会根据以下规则进行更改: 如果一间牢房的两个相邻的房间都被占用或都是空的,那么该牢房就会被占用. 否则,它就会被空置. ...

  2. laravel5.8 表单验证

    'name' => 'required|unique:posts|max:255', // posts 表名 源码  vendor\laravel\framework\src\Illuminat ...

  3. caffe数据集LMDB的生成

    本文主要介绍如何在caffe框架下生成LMDB.其中包含了两个任务的LMDB生成方法,一种是分类,另外一种是检测. 分类任务 第一步  生成train.txt和test.txt文件文件 对于一个监督学 ...

  4. 接口开发中 遇到的坑——Java byte与C# byte 数据转换问题

    前提: 公司与其他公司进行接口对接 需要使用Byte[]数据流传输数据 原本想法如下:直接IO生成就ok了 using System; using System.IO; using System.Te ...

  5. ThinkCMF5.1虚拟机下安装的问题,已成功

    官方的解决方案:https://www.kancloud.cn/thinkcmf/faq/1197179 按它的提示,发现阿里云的虚拟主机htdoc同级的目录没有上传权限. 只能把“ThinkCMF文 ...

  6. python中reload(sys)作用

    python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报错UnicodeDecodeError: 'ascii' codec can't decode ...

  7. ul列表li元素横排显示的IE兼容性问题

    目标: 使ul列表横排显示 现象: 谷歌OK,火狐竖排,IE竖排. 原因: ul原css代码: 首先,去除点号,list-style:none;为了使其横排,使用了display:contents;该 ...

  8. Codeforces 989 P循环节01构造 ABCD连通块构造 思维对云遮月参考系坐标轴转换

    A 直接判存不存在连续的三个包含A,B,C就行 /*Huyyt*/ #include<bits/stdc++.h> #define mem(a,b) memset(a,b,sizeof(a ...

  9. qt常用技巧

    发布程序:windeployqt hello.exe QString乱码问题,在字符串前加u8

  10. Python修炼之路-函数

    Python编程之函数 程序的三种方式 面向对象:类------->class 面向过程:过程------>def 函数式编程:函数------>def 定义函数 函数:逻辑结构化与 ...