四、查询

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. C#与C++的区别

    C# 参考链接:https://www.runoob.com/csharp/csharp-tutorial.html ------------------C#数据类型----------------- ...

  2. 倍增-RMQ问题Sparse-Table算法

       提示 code: #include<bits/stdc++.h> #define ll long long #define inf 0x7fffffff using namespac ...

  3. c++学习笔记之引用

    引用是 C++ 的新增内容,在实际开发中会经常使用:C++ 用的引用就如同C语言的指针一样重要,但它比指针更加方便和易用,有时候甚至是不可或缺的. 同指针一样,引用能够减少数据的拷贝,提高数据的传递效 ...

  4. layui时间显示

    第一次使用layui框架吧!记录layui踩到的坑! 个人洁癖,不太喜欢显示时分秒. 最后终于找到解决方案了! 代码如下: {field: 'ctime',title: '时间',templet:&q ...

  5. python使用xlutils库save()之后,文件损坏

    import xlrd from xlutils.copy import copyworkbook=xlrd.open_workbook('test.xlsx')##打开excel为 .xlsx格式w ...

  6. Fiddler之WebFroms的中文乱码问题

    乱码问题:修改注册表 1.windows+R ,输入regedit ,按enter键 2.进入这个目录:HKEY_CURRENT_USER\Software\Microsoft\Fiddler2 3. ...

  7. Eclipse怎么改变工程保存路径

    1:首先我们要把servers中的Tomcat v8.0 Server at localhost [Stopped]的删除 2:我们再进行加入Tomcat v8.0,,,,直接点击蓝色就弹出下面的页面 ...

  8. Lab 色彩模型和取值范围

    L∈(0,100) a∈(-128,127) b∈(-128,127) opencv 的Lab数据对齐做了量化,使其处于0-255范围 L=L*2.55 a=a+128 b=b+128

  9. eclipse设置字体

  10. vue-$watch属性方法

    特性 https://www.cnblogs.com/widgetbox/p/8954162.html https://segmentfault.com/a/1190000012948175?utm_ ...