四、查询

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. vm下centos7 mini版 NAT模式下配置静态IP

    1.查看虚拟机的默认网关和子网掩码 a.vm菜单栏点击编辑->虚拟网络编辑器 b.选择VMnet8,点击NAT设置,查看子网掩码.网关IP                2. 修改服务器的网络配 ...

  2. go语言开启go module

    export GO111MODULE=on //linux .MAC set GO111MODULE=on //Windows

  3. php socket 编程读写函数

    fwrite() 二进制安全 end条件[string写完/length-1]; fputs() fwrite()的别名; fread() 二进制安全,end条件[一个可用包/EOF/length-1 ...

  4. Sql server 2012 企业中文版安装图文教程

    https://blog.csdn.net/qq_30754565/article/details/82421542

  5. 一次简单的springboot+dubbo+flume+kafka+storm+redis系统

    最近无事学习一下,用springboot+dubbo+flume+kafka+storm+redis做了一个简单的scenic系统 scenicweb:展现层,springboot+dubbo sce ...

  6. 【weixin】微信支付---PC网站微信支付

    一.PC网站支付 微信支付支持完成域名ICP备案的网站接入支付功能.PC网站接入支付后,可以通过JSAPI支付或Native支付,自行开发生成二维码,用户使用微信“扫一扫”来完成支付. 二.支付产品介 ...

  7. JS基础_基本数据类型和引用数据类型

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. css高度居中

    1.已知元素高度 // 子盒子 #div1{ width:200px; height:200px; position: absolute; //父元素需要相对定位 top: 50%; left: 50 ...

  9. css强制换行显示省略号之显示两行后显示省略号

    1,首先来一个固定宽度,在一行显示,超出隐藏,显示省略号的样式 display:block; white-space:nowrap; overflow:hidden; text-overflow:el ...

  10. Spring自定义标签的实现

    首先 简单写下 spring xml解析的过程 通过一段简单的 调用spring代码开始 public static void main(String[] args) { ApplicationCon ...