字典的定义与特性:

字典的每个键值key ==> value 对用冒号分割,每个键值对之间用逗号分割,整个字典包括在花括号{}中。

字典名 = {键名1:值1, 键名2:值2}

如:dict = {key1: value1, key2: value2, key3: value3}

字典没有下标 ----- 不是序列类型!

字典是可以改变的。字典是一种映射  ---- map

字典的优势:1 - 描述清楚

2 - 查找方便

3 - 扩展性好

字典的常用操作:  -----  dict1 = {'name': 'mayu', 'age': 58}

① 获取值   dict1['name']

② 改变值   dict1['name'] = 'tom'   前提是 --- 'name' 这个键名已存在

③ 新增       dict1['weight'] = 160  前提是 --- ‘weight’这个键名不存在

python3   ------ 从尾部增加

python2   ------ 无序的

④ 如果需要获取的值对应的键不存在,那么  --- 会报键错误

⑤字典内部元素不存在顺序的概念

⑥字典内部不存在相同键名

⑦相同键名时,后面会覆盖前面的值  --- 键是唯一的

⑧键、值的类型:

键的类型可以是:数值、字符串、元组        列表和元组不能作为键

                  键一定是哈希类型  --- 不能改变

值的类型可以是:任意类型

字典的技巧:

检查键是否存在:   如:print('name' in dict)

删除元素 ---- 有两种    ① del dict['name']

② dict.pop('name')   pop方法同时将键对应的值对象 返回给value变量

键值长度:  如:len(dict)

清空字典内容:    如:dict.clear()     只改变改地址的内容

获取所有的key返回在类list中: 如  dict.keys()

获取所有的value值返回在list中: 如   dict.values()

获取所有的key  value返回类list中:   如  dict.items()

字典合并:   如   dict1.update(dict2)   ----   print(dict1)

字典的遍历:

       1 - for one  in  students:   -----  one    # 遍历的是键

2 - students.items()  ----  键值对      [(键1,值1),(键2,值2)]

3 - for name, info in students.items():   # items方法  可以获取一个类列表  但是仍不能用下标获取元素。

要想用下标获取元素,需要转换成list后,才可以:  比如   print(list(students.items())[0])

还可以这样写:

for   name,  info  in  students.items():

print(name, info)

由于字典是无序的,不好做排序。

笔记||Python3之字典的更多相关文章

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

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

  2. python聚类算法实战详细笔记 (python3.6+(win10、Linux))

    python聚类算法实战详细笔记 (python3.6+(win10.Linux)) 一.基本概念:     1.计算TF-DIF TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库 ...

  3. [Python3] 017 字典的内置方法

    目录 1. Python3 中如何查看 dict() 的内置方法 2. 少废话,上例子 (1) 清理大师 clear() (2) 拷贝君 copy() (3) get(key, default=Non ...

  4. [Python3] 016 字典:给我一块硬盘,我可以写尽天下!

    目录 0 字典的独白 1 字典的创建 2 字典的特性 3 字典的常见操作 (1) 数据的访问.更改与删除 (2) 成员检测 (3) 遍历 4 字典生成式 5 字典的内置方法 6 可供字典使用的其它方法 ...

  5. python3学习笔记七(字典)

    参照http://www.runoob.com/python3/python3-dictionary.html 字典 字典是另一种可变容器模型,且可以存储任意类型对象. dict1 = {key1:v ...

  6. python3判断字典、列表、元组为空以及字典是否存在某个key的方法

    #!/usr/bin/python3 #False,0,'',[],{},()都可以视为假 m1=[] m2={} m3=() m4={"name":1,"age&quo ...

  7. Python3 数据类型-字典

    字典是一种可变数据类型,且可存储任意类型对象. 字典使用大括号"{}"括起来,由键(key)和值(values)组成,键只能使用不可变类型定义,值可以使用可变类型{'键':'值'} ...

  8. python2和python3,字典和json

    Python2的标准数据类型有: Numbers (数字) String (字符串) List (列表) Tuple (元组) Dictionary (字典) Python3的标准数据类型有: Num ...

  9. python开发笔记-str转字典

    后台接收到post请求数据格式为json格式的字符串,不能直接用字典的get方法 909090909090909090909090909090909 Internal Server Error: /g ...

随机推荐

  1. OC语言自学基础知识总结

    一.成员变量的作用域 二.点语法 三.构造方法 四.分类 五.类的本质 六.自动生成getter和setter方法 七.description方法 八.id类型 九.SEL 一.成员变量的作用域 @p ...

  2. Linux注意事项

    一.学习 Linux 的注意事项 1. Linux 严格区分大小写 Linux 是严格区分大小写的,这一点和 Windows 不一样,所以操作时要注意区分大小写的不同,包括文件名和目录名.命令.命令选 ...

  3. vuejs学习之项目结构解读

    转载:https://www.cnblogs.com/chenleideblog/p/10484554.html 关于Vue中main.js.APP.vue和index.html之间关系 在初始化vu ...

  4. 学习记录:《C++设计模式——李建忠主讲》5.“对象性能”模式

    对象性能模式:面向对象很好地解决了抽象地问题,但是必不可免地要付出一定地代价.对于通常情况来讲,面向对象地成本大都可以忽略不计,但某些情况,面向对象所带来地成本必须谨慎处理. 典型模式:单件模式(Si ...

  5. HTML学习 day02

    1.HTML的相关概念 网站建设流程 网页组成  网页主要由三部分组成:结构(Structure).表现(Presentation)和行为(Behavior). html(Hypertext Mark ...

  6. 记一次Pod中java进程内存“异常”消耗

    背景 环境:openshift3.11 开发反映部署在容器中的java应用内存持续增长,只升不降,具体为: java应用部署在容器中,配置的jvm参数为-Xms1024m -Xmx1024m,容器me ...

  7. 《HelloGitHub》第 44 期

    兴趣是最好的老师,HelloGitHub 就是帮你找到兴趣! 简介 分享 GitHub 上有趣.入门级的开源项目. 这是一个面向编程新手.热爱编程.对开源社区感兴趣 人群的月刊,月刊的内容包括:各种编 ...

  8. Java虚拟机之栈

    一.程序计数器(寄存器):PCR 作用:记住下一条JVM指令的执行地址. 特点:①线程私有的 ②不会存在内存溢出 二.虚拟机栈 1.定义 虚拟机栈:线程运行所需要的内存空间. 栈帧:一个栈帧对应一个方 ...

  9. 一篇文章搞定Python多进程(全)

    1.Python多进程模块 Python中的多进程是通过multiprocessing包来实现的,和多线程的threading.Thread差不多,它可以利用multiprocessing.Proce ...

  10. 使用RNN进行imdb影评情感识别--use RNN to sentiment analysis

    原创帖子,转载请说明出处 一.RNN神经网络结构 RNN隐藏层神经元的连接方式和普通神经网路的连接方式有一个非常明显的区别,就是同一层的神经元的输出也成为了这一层神经元的输入.当然同一时刻的输出是不可 ...