什么是字典

字典是另一种可变容器模型,且可存储任意类型对象。

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

键必须是唯一的,但值则不必。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

示例:

 >>> d ={"name":"beijing"}  #花括号中 “name ”为key 即键 “beijing”为value 即值 中间用冒号分割。多个键值对用逗号分割,键必须唯一。键必须是不可变类型,值可以是任何数据类型
>>> d
{'name': 'beijing'}
>>> type(d)
<type 'dict'>
>>>

创建字典

方式1:mydict={}

方式2:mydict=dict(arg)

方式3:mydict={}.fromkeys(arg)

 >>> d={}     #创建了一个空的字典
>>> person ={"name":"zhangsan","age":""} #创建一个有内容的字典
>>> d["student"]="xiaoming" #向字典d中添加内容
>>> d
{'student': 'xiaoming'}
>>> id(d) #id函数获取对象的内存地址。
49510328L
>>> d["age"]=18 #向d字典中添加age
>>> d
{'age': 18, 'student': 'xiaoming'}
>>> id(d) #id函数获取对象的内存地址与上面的相同,由此可见添加内容并没有创建新的字典,说明字典是可以修改的,或者说字典是可变得
49510328L
>>> name=([1,"baidu"],[2,"weibo"]) #创建一个元组,元组中有两个列表,一个列表中有两个元素,这两个元素对应着即将创建的key和value
>>> name
([1, 'baidu'], [2, 'weibo'])
>>> web =dict(name) #使用dict函数创建字典
>>> web
{1: 'baidu', 2: 'weibo'}
>>> w =dict(name="tom",age=10) #使用dict函数创建字典
>>> w
{'age': 10, 'name': 'tom'}
>>> book ={}.fromkeys(("python","author"),"cc") #使用fromkeys创建字典,可以看出value值可以重复
>>> book
{'python': 'cc', 'author': 'cc'}
>>>

基本方法

  len()  键值对的长度

  d[key] 通过key获取value值

  d[key]=value 修改或增加

  del[key] 删除

  key in d 判断key是否在字典d中

 >>> city_codes
{'tianjin': '', 'beijing': '', 'shanghai': '', 'chongqing': ''}
>>> "beijing is the capital of China ,its area code is %(beijing)s" % city_codes
'beijing is the capital of China ,its area code is 010'
>>> len(city_codes) #
4
>>> city_codes["beijing"]
''
>>> city_codes["nanjing"]=""
>>> city_codes
{'tianjin': '', 'beijing': '', 'shanghai': '', 'nanjing': '', 'chongqing': ''}
>>> del city_codes["shanghai"]
>>> "shanghai" in city_codes
False
>>>

键值对:映射关系

 >>> city_codes={"beijing":"","shanghai":"","tianjin":"","chongqing":""}
>>> city_codes["beijing"] #通过字典的key访问字典的值
''
>>> city_codes #字典是无序的
{'tianjin': '', 'beijing': '', 'shanghai': '', 'chongqing': ''}
>>> "beijing is the capital of China ,its area code is %(beijing)s" % city_codes #格式化字符串可以使用字典(注意)
'beijing is the capital of China ,its area code is 010'
>>>                                                                                                

Python 学习笔记(九)Python元组和字典(二)的更多相关文章

  1. Python学习笔记----列表、元组和字典的基础操作

    文章目录 一.列表的基本操作 1.1 修改列表中的某个数据 1.2 获取某个元素的返回值(返回的是索引) 1.3 在列表中插入新的元素 1.4 删除列表中的元素 1.5 +和* 二.内置的函数和方法 ...

  2. python3.4学习笔记(九) Python GUI桌面应用开发工具选择

    python3.4学习笔记(九) Python GUI桌面应用开发工具选择 Python GUI开发工具选择 - WEB开发者http://www.admin10000.com/document/96 ...

  3. Python学习笔记九

    Python学习笔记之九 为什么要有操作系统 管理硬件,提供接口. 管理调度进程,并且将多个进程对硬件的竞争变得有序. 操作系统发展史 第一代计算机:真空管和穿孔卡片 没有操作系统,所有的程序设计直接 ...

  4. python学习笔记--Django入门四 管理站点--二

    接上一节  python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...

  5. python 学习笔记 9 -- Python强大的自省简析

    1. 什么是自省? 自省就是自我评价.自我反省.自我批评.自我调控和自我教育,是孔子提出的一种自我道德修养的方法.他说:“见贤思齐焉,见不贤而内自省也.”(<论语·里仁>)当然,我们今天不 ...

  6. [Python学习笔记1]Python语言基础 数学运算符 字符串 列表

    这个系列是我在学习Python语言的过程中记录的笔记,主要是一些知识点汇总,而非学习教程,可供有一定编程基础者参考.文中偏见和不足难以避免,仅供参考,欢迎批评指正. 本系列笔记主要参考文献是官网文档: ...

  7. python学习笔记(一):python简介和入门

    最近重新开始学习python,之前也自学过一段时间python,对python还算有点了解,本次重新认识python,也算当写一个小小的教程.一.什么是python?python是一种面向对象.解释型 ...

  8. python学习笔记之——python模块

    1.python模块 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python ...

  9. Python学习笔记 - day12 - Python操作NoSQL

    NoSQL(非关系型数据库) NoSQL,指的是非关系型的数据库.NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称.用于超大规模数据的存储.(例如 ...

  10. python 学习笔记一——Python安装和IDLE使用

    好吧,一直准备学点啥,前些日子也下好了一些python电子书,但之后又没影了.年龄大了,就是不爱学习了.那就现在开始吧. 安装python 3 Mac OS X会预装python 2,Linux的大多 ...

随机推荐

  1. CSS单行、多行文本溢出显示省略号(……)解决方案

    单行文本溢出显示省略号(-) text-overflow:ellipsis-----部分浏览器还需要加宽度width属性 .ellipsis{ overflow: hidden; text-overf ...

  2. webservice使用windows身份验证,ajax请求报错401未授权的解决办法

    $.ajax({ type: "GET", url: service_url, dataType: "xml", data: "ParamId=&qu ...

  3. 软件项目技术点(7)——在canvas上绘制自定义图形

    AxeSlide软件项目梳理   canvas绘图系列知识点整理 图形种类 目前我们软件可以绘制出来的形状有如下这几种,作为开发者我们一直想支持用户可以拖拽的类似word里面图形库,但目前还没有找到比 ...

  4. Office - InfoPath

    1. 移除隐藏空间后剩余的空白: http://social.technet.microsoft.com/Forums/sharepoint/zh-TW/3dea3014-f808-428b-b283 ...

  5. 11_Redis集群

    [Redis集群分类] 1.主从复制(master/slave) 2.高可用Sentinel哨兵 3.高可用集群模式 [ 主从复制(master/slave)] [Redis一主多从架构] 通过持久化 ...

  6. keytool使用方法

    获取KeyHash三步骤 1.openssl-link 2.jdk-link 3.KeySotre的HashKey获取方式: keytool.exe -exportcert -alias mia -k ...

  7. CSS浮动并清除浮动(造成的影响)

    一.浮动 CSS浮动    CSS float浮动的深入研究.详解及拓展(一)    CSS浮动属性Float详解 块级元素独占一行 块级元素,在页面中独占一行,自上而下排列,也就是传说中的流. 可以 ...

  8. spfa 的算法实现之一

    问题描述:给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证没有负环).请你计算从1号点到其他点的最短路(顶点从1到n编号). 输入格式:第一行两个整数n, m.接下来的m行,每行有三个整 ...

  9. html tags and attribute集参考

    cite 表示引用到某一本书籍名称,默认样式为斜体,q 表示直接引用到里面的话,大块的引用使用block默认样式将增加“双引号” ,关键的词用<b>默认为粗体:一些技术术语则用<i& ...

  10. SQL SERVER ->> IDENTITY相关函数

    IDENTITY函数 -- 只能用在SELECT INTO语句中,用于在插入数据的时候模拟IDENTITY属性的作用生成自增长值. ,) AS ID_Num INTO NewTable FROM Ol ...