zoukankan      html  css  js  c++  java
  • 笔记||Python3之字典

    字典的定义与特性:

           字典的每个键值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)

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

  • 相关阅读:
    (转)用JMX监测JVM的运行参数
    MySql
    ORACLE小工具:存储过程清空所有表或使所有触发器失效
    简单易懂,原码,补码,反码
    centos7如何关闭防火墙
    中兴大事件
    苹果降频门:旧款iPhone哪些功能受到影响
    苹果降频门
    华为P10闪存门
    N32903系列的基础知识(1)
  • 原文地址:https://www.cnblogs.com/peipei-Study/p/11936552.html
Copyright © 2011-2022 走看看