python进阶教程之词典、字典、dict


Posted in Python onAugust 29, 2014

基础教程介绍了基本概念,特别是对象和类。

进阶教程对基础教程的进一步拓展,说明Python的细节。希望在进阶教程之后,你对Python有一个更全面的认识。

之前我们说了,列表是Python里的一个类。一个特定的表,比如说nl = [1,3,8],就是这个类的一个对象。我们可以调用这个对象的一些方法,比如 nl.append(15)。

我们要介绍一个新的类,词典 (dictionary)。与列表相似,词典也可以储存多个元素。这种储存多个元素的对象称为容器(container)。

基本概念

常见的创建词典的方法:

>>>dic = {'tom':11, 'sam':57,'lily':100}

>>>print type(dic)

词典和表类似的地方,是包含有多个元素,每个元素以逗号分隔。但词典的元素包含有两部分,键和值,常见的是以字符串来表示键,也可以使用数字或者真值来表示键(不可变的对象可以作为键)。值可以是任意对象。键和值两者一一对应。

比如上面的例子中,‘tom'对应11,'sam对应57,'lily'对应100
 
与表不同的是,词典的元素没有顺序。你不能通过下标引用元素。词典是通过键来引用。

>>>print dic['tom']

>>>dic['tom'] = 30

>>>print dic

构建一个新的空的词典:

>>>dic = {}

>>>print dic

 

在词典中增添一个新元素的方法:

>>>dic['lilei'] = 99

>>>print dic

这里,我们引用一个新的键,并赋予它对应的值。

词典元素的循环调用

dic = {'lilei': 90, 'lily': 100, 'sam': 57, 'tom': 90}

for key in dic:

    print dic[key]

在循环中,dict的每个键,被提取出来,赋予给key变量。

通过print的结果,我们可以再次确认,dic中的元素是没有顺序的。

词典的常用方法

>>>print dic.keys()           # 返回dic所有的键

>>>print dic.values()         # 返回dic所有的值

>>>print dic.items()          # 返回dic所有的元素(键值对)

>>>dic.clear()                # 清空dic,dict变为{}

 

另外有一个很常用的用法:

>>>del dic['tom']             # 删除 dic 的‘tom'元素

del是Python中保留的关键字,用于删除对象。

与表类似,你可以用len()查询词典中的元素总数。

>>>print(len(dic))

总结

词典的每个元素是键值对。元素没有顺序。

dic = {'tom':11, 'sam':57,'lily':100}

dic['tom'] = 99

for key in dic: ...

del, len()
Python 相关文章推荐
wxPython中文教程入门实例
Jun 09 Python
python迭代器实例简析
Sep 25 Python
Python序列之list和tuple常用方法以及注意事项
Jan 09 Python
Python中在脚本中引用其他文件函数的实现方法
Jun 23 Python
Python基于回溯法子集树模板解决旅行商问题(TSP)实例
Sep 05 Python
python装饰器-限制函数调用次数的方法(10s调用一次)
Apr 21 Python
Python Django简单实现session登录注销过程详解
Aug 06 Python
更新pip3与pyttsx3文字语音转换的实现方法
Aug 08 Python
windows下Python安装、使用教程和Notepad++的使用教程
Oct 06 Python
Python实现获取当前目录下文件名代码详解
Mar 10 Python
Python3爬虫里关于Splash负载均衡配置详解
Jul 10 Python
在vscode中启动conda虚拟环境的思路详解
Dec 25 Python
python字符串排序方法
Aug 29 #Python
python基础教程之对象和类的实际运用
Aug 29 #Python
python基础教程之面向对象的一些概念
Aug 29 #Python
初学Python实用技巧两则
Aug 29 #Python
python基础教程之自定义函数介绍
Aug 29 #Python
python爬虫常用的模块分析
Aug 29 #Python
python基础教程之循环介绍
Aug 29 #Python
You might like
德生PL660的电路分析和打磨
2021/03/02 无线电
php将字符串转换成16进制的方法
2015/03/17 PHP
Centos下升级php5.2到php5.4全记录(编译安装)
2015/04/03 PHP
PHP实现的简单分页类及用法示例
2016/05/06 PHP
获得所有表单值的JQuery实现代码[IE暂不支持]
2012/05/24 Javascript
jquery实现简单易懂的图片展示小例子
2013/11/21 Javascript
浏览器窗口加载和大小改变事件示例
2014/02/27 Javascript
JavaScript 栈的详解及实例代码
2017/01/22 Javascript
jQuery插件HighCharts实现的2D面积图效果示例【附demo源码下载】
2017/03/15 Javascript
微信小程序实现图片轮播及文件上传
2017/04/07 Javascript
JS中把函数作为另一函数的参数传递方法(总结)
2017/06/28 Javascript
基于 Vue 的树形选择组件的示例代码
2017/08/18 Javascript
详解vue+vuex+koa2开发环境搭建及示例开发
2018/01/22 Javascript
JS对日期操作封装代码实例
2019/11/08 Javascript
vue前端和Django后端如何查询一定时间段内的数据
2021/02/28 Vue.js
[14:36]2014 DOTA2国际邀请赛中国区预选赛5.21 Orenda VS NE
2014/05/22 DOTA
python中的__slots__使用示例
2015/02/26 Python
Python OS模块常用函数说明
2015/05/23 Python
利用Python实现网络测试的脚本分享
2017/05/26 Python
Python实现将Excel转换为json的方法示例
2017/08/05 Python
Python二进制串转换为通用字符串的方法
2018/07/23 Python
python flask解析json数据不完整的解决方法
2019/05/26 Python
tensorflow对图像进行拼接的例子
2020/02/05 Python
深入剖析HTML5 内联框架iFrame
2016/05/04 HTML / CSS
维德科技C#面试题笔试题
2015/12/09 面试题
市政施工员自我鉴定
2014/01/15 职场文书
会议邀请书范文
2014/02/02 职场文书
《在家里》教后反思
2014/03/01 职场文书
《云房子》教学反思
2014/04/20 职场文书
股份合作协议书
2014/09/10 职场文书
银行会计主管岗位职责
2014/10/01 职场文书
2015年实习班主任工作总结
2015/04/23 职场文书
2015年基层党建工作汇报材料
2015/06/25 职场文书
互联网创业商业模式以及赚钱法则有哪些?
2019/10/12 职场文书
python3实现Dijkstra算法最短路径的实现
2021/05/12 Python
Mysql超详细讲解死锁问题的理解
2022/04/01 MySQL