字典的定义

  • dictionary(字典) 是 除列表以外 Python 之中 最灵活 的数据类型(有点类似java中的Map)
  • 字典同样可以用来 存储多个数据
    • 通常用于存储 描述一个 物体 的相关信息
  • 和列表的区别
    • 列表 是 有序 的对象集合
    • 字典 是 无序 的对象集合
  • 字典用 {} 定义
  • 字典使用 键值对 存储数据,键值对之间使用 , 分隔
    • key 是索引
    • value 是数据
    • 之间使用 : 分隔
    • 键必须是唯一的
    • 可以取任何数据类型,但 只能使用 字符串数字元组
  • 一个建的字典的定义如下:
    1. lierge = {"name": "李二哥",
    2. "age": 18,
    3. "height": 1.66}

字典常用操作

  • 在ipython3中定义一个字典,例如:dict = {}
  • 输入dict. 按下Tab键,ipython3会提示字典能使用的方法如下:
  • 字典的常用操作:
    • 取值:dict[key]

      1. # 1. 取值
      2.  
      3. print(zhangsan_dict["name"])
      4. # 注意,在取值时,如果指定的key不存在,程序会报错
    • 增加/修改:dict[key] = xxxx
      1. # 2. 增加/修改
      2.  
      3. zhangsan_dict["name"] = "张三三"
      4.  
      5. zhangsan_dict["weight"] = 66
    • 删除:dict.pop(key)
      1. # 3. 删除操作
      2.  
      3. zhangsan_dict.pop("name")
      4. # 注意,在删除时,如果指定的key不存在,程序会报错
      5. # zhangsan_dict.pop("xxxx")
    • 统计:len(dict)
      1. # 4. 统计键值对数量
      2. print(len(zhangsan_dict))
    • 合并字典:dict.update(dict)
      1. # 5. 合并字典
      2. temp_dict = {"weight": 88}
      3. zhangsan_dict.update(temp_dict)
    • 清空字典:dict.clear()
      1. # 6. 清空字典
      2. zhangsan_dict.clear()

字典的遍历

  • 遍历 就是 依次字典 中获取所有键值对
  • 例子:
    1. zhangsan_dict = {"name": "张三",
    2. "age": 18,
    3. "height": 1.66}
    4.  
    5. for key in zhangsan_dict:
    6.  
    7. print("%s: %s" % (key, zhangsan_dict[key]))

字典的应用场景

  • 尽管可以使用 for in 遍历 字典
  • 但是在开发中,更多的应用场景是:
    • 使用 多个键值对,存储 描述一个 物体 的相关信息 —— 描述更复杂的数据信息
    • 多个字典 放在 一个列表 中,再进行遍历,在循环体内部针对每一个字典进行 相同的处理
  1. person = [
  2. {"name": "张三",
  3. "age": 18,
  4. "height": 1.66},
  5. {"name": "李四",
  6. "age": 17,
  7. "height": 1.88}
  8. ]
  9.  
  10. for p in person:
  11.  
  12. print(p)

 

--本文完--

python基础学习(九)字典的更多相关文章

  1. Python 基础学习之字典

    1.基础代码 ##第六章 字典学习 test={'} print(test['a']) print(test['b']) 返回结果为: black123 2.基础知识: Python中的字典是一系列键 ...

  2. Python基础学习Day5 字典的增、删、改、查的用法 分别赋值

    一.字典的介绍 字典:字典是Python的基础数据类型之一:字典可以存储大量数据,关系型数据. 同样是Python中唯一的映射类数据类型.         数据类型的分类:        可变的数据类 ...

  3. python 基础学习4 字典和循环语句

    学了这么多天的基础,好着急的想什么时候可以开始写个小程序,今天还是静下心来把字典和循环语句学习了 关于字典,主要是了解了字典的创建,和映射,以及一些基本的运算法,运算法不一一列出,运算法在用到的时候会 ...

  4. python基础学习笔记——字典

    字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 { ...

  5. python 基础学习(字典对象,set对象)

    1.dict 字典对象 a.定义对象 d={'a':14,'b':12}b.通过key获取value d['a'] 方法1.判断key是否存在 if 'a' in d: d['a']方法2:通过用ge ...

  6. Python基础学习九 单元测试

    import unittest import HTMLTestRunner #产生测试报告 from BeautifulReport import BeautifulReport def calc(x ...

  7. Python基础学习三 字典、元组

    一.元组 元组,提示别人,这个值是不能被改变的,元组的定义方式是用(),小括号: 元组只有两个方法,那就是count和index mysql1 = ('127.0.0.1',3306,'my','ro ...

  8. Python基础学习九 数据库备份

    class BakDb(object): def __init__(self,ip,username,passwd,port=3306,path=r'C:\Users\BJQT\Desktop\dat ...

  9. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  10. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

随机推荐

  1. Linux下安装GEOS环境

    1.下载对应版本的geos源码:http://download.osgeo.org/geos/ 2.下载后使用cd切换到源码目录解压:tar -xvf geosXXX.tar.gz 3.切换到解压后目 ...

  2. C#算法与数据结构之线性结构

    线性结构是什么? 线性结构是一种数据结构,它有一对一的关系,就像一个长对,一个接一个,特点是,除第一个元素和最后一个元素外,其它元素前后只有一个元素. 简单示例1: static void Main( ...

  3. 1.1.1 PROB Your Ride Is Here

    === /* ID: luopengting PROG: ride LANG: C++ */ #include <iostream> #include <cstdio> #in ...

  4. 关于css如何让图片文字居中的方法

    在将父级转换为单元格形式时,设置的相关属性  可以达到如下效果:

  5. WSGI and Paste学习笔记

    The Problem Lots of web frameworks Zope, Quixote, Webware, SkunkWeb and Twisted Web etc Applications ...

  6. UglifyJs打包压缩问题引起的思考

    问题背景 最近做了一个webapp项目,qa用手机测试功能时,在iphone6plus上表现是白屏,其他手机目测是ok的:因为之前在测试其他项目时也发现在这个iphone6上表现与其他手机不太一样.于 ...

  7. 微信小程序-form表单-获取用户输入文本框的值

    微信小程序-form表单-获取用户输入文本框的值 <input name='formnickname' class="textarea" placeholder=" ...

  8. 把ajax包装成promise的形式(1)

    概述 为了体验promise的原理,我打算自己把ajax包装成promise的形式.主要希望实现下列功能: // 1.使用success和error进行链式调用,并且可以在后面加上无限个 promis ...

  9. [Swift]扩展String类:Base64的编码和解码

    扩展方式1: extension String { //Base64编码 func encodBase64() -> String? { if let data = self.data(usin ...

  10. python(leetcode)-14最长公共前缀

    编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1: 输入: ["flower","flow" ...