字典的定义与特性:

字典的每个键值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. (二十一)golang--字符串中的函数

    golang中ascii对应的字符占一个字节,而汉字占三个字节. (1)统计字符串的长度len (2)字符串遍历,同时处理有中文的问题r:=[]rune(str) (3)字符串转整数:n,err:= ...

  2. 字体图标转base64

    如果你在阿里矢量库下载了字体图标在项目引入无法显示时,可以把图标转成base64 在线转换的链接 https://transfonter.org/ css字体图标的制作

  3. 这份最新Python面试精选问题你会几道?

    相信很多小伙伴学python以后都想进大厂,但是进大厂前你得了解些大厂面试题,可以在面试前复习下,以下是精选的5道python面试题: 第一. Python 的特点和优点是什么? Python 可以作 ...

  4. nyoj 366 D的小L (全排列)

    D的小L 时间限制:4000 ms  |  内存限制:65535 KB 难度:2   描述       一天TC的匡匡找ACM的小L玩三国杀,但是这会小L忙着哩,不想和匡匡玩但又怕匡匡生气,这时小L给 ...

  5. ZeroC Ice发送大数据

    继上文,我们使用ZeroC Ice传递大块数据时,通常有两种做法,一种是一次请求,另一种就是分多次请求(,这种做法在官方文档有例子).选哪一种根据需要而定. 当分多次请求来完成一大块数据,到底选择每次 ...

  6. vue路由传参刷新丢失

    没有系统学习过vue,以前使用路由传参都是直接this.$router.push({name:'main',params:{'id': 123}})的,没有在路由定义中配置参数,如下: router: ...

  7. [Part 4] 在Windows 10上源码编译PCL 1.8.1支持VTK和QT,可视化三维点云

    本文首发于个人博客https://kezunlin.me/post/2d809f92/,欢迎阅读! Part-4: Compile pcl with vtk qt5 support from sour ...

  8. Stream系列(五)Min Max Average方法使用

    最小值,最大值,平均值 EmployeeTestCase.java package com.example.demo; import lombok.Data; import lombok.ToStri ...

  9. 一个HTML5培训班毕业生的找工作随笔

    昨天刚参加完一个面试,通过了.写个随笔记录一下. 先介绍一下背景. 我是今年十月份的时候从某个培训机构的HTML5 Web前端培训班毕业的,是一个刚进入IT行业的新人. 本人毕业于某三流学校,在参加培 ...

  10. HashMap面试题,看这一篇就够了!

    目录 序言 一.JDK7中的HashMap底层实现 1.1 基础知识 1.2 put()方法 1.2.1 特殊key值处理 1.2.2 扩容 1.2.3 如何计算bucket下标? 1.2.4 在目标 ...