四、查询

1.dic[key]:可以通过key来索引查询字典的元素,若键不存在,则会抛出KeyError异常。

d = {'age':27, 'name':'liu', 'sex':'male'}
print(d["age"]) # 结果:27
print(d["score"]) # 结果:KeyError: 'score',报错了

2.get(key)方法:不会抛出异常,不存在则返回None,也可以设置默认返回值。

d = {'age':27, 'name':'liu', 'sex':'male'}
print(d.get('name')) # 结果:liu
print(d.get('addr')) # 结果:None
print(d.get('addr', '河南')) # 结果:河南

3.与第二种类似,区别在于setdefault方法会更新字典。

d = {'age':27, 'name':'liu', 'sex':'male'}
print(d.setdefault('addr')) # 结果:None,此时字典已经更新了,addr值为None。
print(d.setdefault('addr', '河南')) # 结果:None,如果没有第二行,此时返回:河南

五、for 循环遍历打印字典

# -*- coding:utf-8 -*-
dic = {"name":"jack", "age":27, "score":100} # 循环打印 key
for k in dic:
print(k) # 结果:name age score
for k in dic.keys():
print(k) # 结果:name age score # 循环打印 values
for v in dic.values():
print(v) # jack 27 100 # 循环打印 key + values
for t in dic.items():
print(t) # 结果:('name', 'jack') ('age', 27) ('score', 100)
for k, v in dic.items():
print(k, v) # 结果:k是键,v是值
for k in dic:
print(k, dic[k])

判断一个对象是否为字典,可以使用isinstance方法

d = {"name":"liu", "age":27}

print(isinstance(d, dict))   # 如果是字典,返回True,否则返回False
print("{0} is {1}".format(d, isinstance(d, dict)))

其它数据类型转成字典

arr1 = ['jack', 'rose', 'marry']
arr2 = [68, 85, 66]
dict1 = dict(zip(arr1, arr2))
print(dict1) # {'rose': 85, 'marry': 66, 'jack': 68} dict2 = dict((('a',2), ('b',4)))
print(dict2) # {'a': 2, 'b': 4} dict3 = dict((['a',2], ['b',4]))
print(dict3) # {'a': 2, 'b': 4} dict4 = dict([('a',2), ('b',4)])
print(dict4) # {'a': 2, 'b': 4} dict5 = dict([['a',2], ['b',4]])
print(dict5) # {'a': 2, 'b': 4}

Python—数据类型之字典(Dict)的更多相关文章

  1. python数据类型之字典(dict)和其常用方法

    字典的特征: key-value结构key必须可hash,且必须为不可变数据类型.必须唯一. # hash值都是数字,可以用类似于2分法(但比2分法厉害的多的方法)找.可存放任意多个值.可修改.可以不 ...

  2. python基础之字典dict和集合set

    作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...

  3. python入门14 字典dict

    字典dict是无序的key:value格式的数据序列 #coding:utf-8 #/usr/bin/python """ 2018-11-11 dinghanhua 字 ...

  4. python数据类型:字典Dictionary

    python数据类型:字典Dictionary 字典是一种可变容器模型,可以存储任意类型对象 键是唯一的,但是值不需要唯一 值可以取任何数据类型,但是键必须是不可变的,如字符串,数字,元组 创建字典: ...

  5. Python基本数据类型之字典dict

    字典dict 是一个键(key)值(value)对,结构为{},大括号 创建字典 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 info = { # k ...

  6. python中的字典(dict),列表(list),元组(tuple)

    一,List:列表 python内置的一种数据类型是列表:list.list是一种有序的数据集合,可以随意的添加和删除其中的数据.比如列出班里所有的同学的名字,列出所有工厂员工的工号等都是可以用到列表 ...

  7. python 浅谈字典dict

    一.字典简介 字典(dict)是python中唯一的映射类型,他是以{ }括起来的键值对组成,在dict中的key是唯一的.在保存的时候,根据key来计算出一个内存地址.然后将key-value保存在 ...

  8. python 数据类型三 (字典)

    一.字典的介绍 字典(dict)是python中唯一的一个映射类型,它是以{}括起来的键值对组成,在dict中key是唯一的,在保存的时候,根据key来计算出一个内存地址,然后将key-value保存 ...

  9. Python数据类型(字典)

    文章内容参考了教程:http://www.runoob.com/python/python-basic-syntax.html#commentform Python 字典(Dictionary) 字典 ...

随机推荐

  1. 通过模板创建一个ABP项目

    ⒈下载 进入ABP模板页面,选择模板后下载 ⒉运行 1.初始化数据库 修改xxxx.Migrator.xxxx.Web.Host appsettings.json中的连接字符串 2.还原数据库 在Nu ...

  2. LC 200 Number of Islands

    问题描述 Given a 2d grid map of '1's (land) and '0's (water), count the number of islands. An island is ...

  3. Elastic Search中DSL Query的常见语法

    Query DSL是一种通过request body提交搜索参数的请求方式.就是将请求头参数(?xxx=xxx)转换为请求体参数.语法格式:GET [/index_name/type_name]/_s ...

  4. Web前端开发CSS基础

    CSS 层叠样式表(英文全称:Cascading Style Sheets),是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言.CSS不 ...

  5. c# winfrom 界面设计

    1.在用DotnetBar的RibbonControl时,界面最大化时,会把电脑桌面的任务栏遮盖住: 解决办法:在load事件中写入: , Screen.PrimaryScreen.WorkingAr ...

  6. JXOI 2018滚粗记

    --Update5.2 成绩出了,见后文 听说省选VAN写游记是传统,本蒟蒻也来发一篇吧. DAY 0 本来以为省选不在JKFZ举行的结果又是在JKFZ,本校作战感觉终究会是好一些吧,和jyh一起向教 ...

  7. cookie以一个或多个空格开头

    作为一个整体,如果cookie以一个或多个空格开头,请用空格替换所有空格:如果cookie以一个或多个空格结尾,请用空格替换所有空格. 象征意义: \ S:空间,空间 +一个或多个 ^开始,^s,以空 ...

  8. linux安装RabbitMQ yum

      一.RabbitMQ概念RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发 ...

  9. 配置Notepad++万能调试

    需求: 正常情况下 使用notepad++编辑修改一些网页或脚本文件,修改之后想要查看效果需要Ctrl+S保存,然后从文件目录中打开查看. 现在我想做的就是简化查看效果的流程,让notepad++实现 ...

  10. SQL语句复习【专题三】

    SQL语句复习[专题三] DML 数据操作语言[insert into update delete]创建表 简单的方式[使用查询的结果集来创建一张表]create table temp as sele ...