Python成长之路第一篇(3)_初识字典
经过上章的学习我们已经了解到了列表可以通过索引来获取对应的值,在本章我们将学到通过名字来索引数据,这种结构的类型称之为映射(maooing),在Python中字典是唯一内建的映射类型,其中的值我们称之为键值对,也就是由(键,值)组成映射关系。
一、初识字典dict
字典这个名称已经给出了有关这个数据结构功能的一些提示,在某些情况下字典比列表更实用,比如我们要纯粹人的姓名和电话,我们就可以通过姓名找到电话
(1)字典的创建和使用
创建一个字典并且查看它的类型
>>> dic = {'a':'123','b':'1234','c':'12345', 'd':'123456'}
>>> type(dic)
<class 'dict'>当我们想要查看b下面的数字的时候我我就这么操作,请注意单引号
>>> dic['b']
'1234'(2)dict函数类似于list等
我们可以通过dict函数来通过其他映射关系的序列来创建字典
>>> tram = [('name','ala'),('aga','50')]
>>> d = dict(tram)
>>> d
{'name': 'ala', 'aga': '50'}
二、字典的基本操作
字典的基本操作很多方面与序列类型
(1)返回字典的长度,字典是以一个键值对当做一个元素
>>> d
{'name': 'ala', 'aga': '50'}
>>> len(d)
2(2)更改键的值
>>> d
{'name': 'ala', 'aga': '50'}>>> d['name']='xiao'
>>> d
{'name': 'xiao', 'aga': '50'}(3)删除键值对
>>> del d['name']
>>> d
{'aga': '50'}(4)检查字典中是否包含键为xxx的项如果有返回True否则False
>>> 'aga' in d
True>>> 'da' in d
False(5)字典的特性
①键的类型,可以是任何不可改变的类型
②自动添加,即使键是不存在的我们可以给他添加进入字典,而不需要使用append的方法
③成员资格,当查找当前键是否存在于此字典中这个的效率要比在列表中查找更高效
1、键的类型,键可以为数字类型浮点型等的
>>> s = {}
>>> s[20] = 'aaaa'
>>> s
{20: 'aaaa'}>>> s[20.22]= 'bbb'
>>> s
{20.22: 'bbb', 20: 'aaaa'}字典示例
以员工名字作为键,他的值为另外的字典,包含员工编号number和电话phone
address = { 'a':{ 'number':'01', 'phone':'110' }, 'b':{ 'number':'02', 'phone':'119' }, 'c':{ 'number':'03', 'phone':'120' }
}当我们要查询b的编号时我们就要这么查询:表示address下键值对b下的键为number的值print(address['b']['number'])02小练习1需求:根据用户输入的用户名称得到用户的编号和电话实现功能简陋的代码如下(Python3.5环境):address = { 'a':{ 'number':'01', 'phone':'110' }, 'b':{ 'number':'02', 'phone':'119' }, 'c':{ 'number':'03', 'phone':'120' }
}
inpu = input("请输入查询的用户名:")
print("当前用户:"+inpu)
print('用户编号是:'+address[inpu]['number'])
print('用户电话是:'+address[inpu]['phone'])
Python成长之路第一篇(3)_初识字典的更多相关文章
- python成长之路第一篇(5)文件的基本操作
一.三元运算 我们在上章学习的if,,else,,有一种简便的方法 他的表达式是这样的:变量 = 值1 if 条件 else 值2 解释过来就是如果aaa等于sss则输出值1否则输出值2 二.类的概念 ...
- Python成长之路第一篇(2)-初识列表和元组
可以将列表和元组当成普通的“数组”,他能保存任意数量任意类型的Python对象,和数组一样都是通过数字0索引访问元素,列表和元组可以存储不同类型的对象,列表和元组有几处重要区别.列表元素用([])包括 ...
- PYthon成长之路第一篇(1)__字符串初识
今天一起走进python的代码世界,一起领悟python的魅力 在很多学习python的书中都会以 print “Hello,world!” 这样的而一个程序为开始,那么其中的 hello,worl ...
- Python成长之路第一篇(2)__初识列表和元组
可以将列表和元组当成普通的“数组”,他能保存任意数量任意类型的Python对象,和数组一样都是通过数字0索引访问元素,列表和元组可以存储不同类型的对象,列表和元组有几处重要区别.列表元素用([])包括 ...
- Python成长之路第一篇(4)_if,for,while条件语句
有了以上的基本基础,已经上面写的几个小练习,大家肯定有很多的不满,比如查询为什么查询一次就退出了呢?下面我们来学习条件语句 一.万恶的加号 以前我们在print的时候如果要加上变量都有是使用+来作为连 ...
- 我的Python成长之路---第一天---Python基础(1)---2015年12月26日(雾霾)
2015年12月26日是个特别的日子,我的Python成之路迈出第一步.见到了心目中的Python大神(Alex),也认识到了新的志向相投的伙伴,非常开心. 尽管之前看过一些Python的视频.书,算 ...
- python成长之路——第一天
一.python版本间的差异: 1.1:2.x与3.x版本对比 version 2.x 3.x print print " "或者print()打印都可以正常输出 只能print( ...
- Python成长之路第二篇(1)_数据类型内置函数用法
数据类型内置函数用法int 关于内置方法是非常的多这里呢做了一下总结 (1)__abs__(...)返回x的绝对值 #返回x的绝对值!!!都是双下划线 x.__abs__() <==> a ...
- Python成长之路第二篇(2)_列表元组内置函数用法
列表元组内置函数用法list 元组的用法和列表相似就不一一介绍了 1)def append(self, p_object):将值添加到列表的最后 # real signature unknown; r ...
随机推荐
- CDZSC_2015寒假新人(1)——基础 f
Description An inch worm is at the bottom of a well n inches deep. It has enough energy to climb u i ...
- AngularJS中如何使用trigger报错$digest already in progress
今天在使用trigger事件碰到问题: 例如我有两个按钮,button1和button2,在button2绑定了ng-click事件,现在想点击button1从而触发button2的ng-click事 ...
- easyui控件的加载顺序
使用easyui做布局时,会模仿窗口程序界面,做出一些较复杂的布局.按由外层到内层的顺序: (最外层)panel->tabs->tabs1 ->tabs2->layout-&g ...
- Python 在Windows下安装matplotlib
windows下安装很麻烦,使用easy_install 安装报错 提示缺少freetype 和png 后经多方查询,最终安装成功 以下是安装过程 前提你的Python环境已经搭建好了 1.前提需要 ...
- $.each与$(data).each区别
在前端使用使用JQuery解析Json数据时,在遍历数组或者对象数据时,经常使用的函数为each.发现此函数有两种形式: $.each $(data).each 所达到的效果是一样的,使用方法的有一些 ...
- SQL Server 连接和事务相关的问题。
方法 1. dbcc opentran + sys.dm_exec_connections dbcc opentran; dbcc opentran 针对当前数据库 dbcc opentran('St ...
- MDX基础
第一章 看了本书的第一章,总体一个印象,废话真多.话不多说:整理书中知识点,实践出真理! 知识点:MDX语法:简单的函数介绍; 首先语法网上流传的很多,读者应该具备cube(多维数据集)的知识基础,我 ...
- Delphi控件大全:www.vclcomponents.com
torry的排版不行了,还好找到它.
- 【具体数学 读书笔记】1.2 Lines in the Plane
本节介绍平面划分问题,即n条直线最多把一个平面划分为几个区域(region). 问题描述: "What is the maximum number Ln of regions defined ...
- uva 10382 Watering Grass_贪心
题意:给你个矩形n*m,再给你n个圆的圆心坐标和半径,问最用最少用几个圆把这个矩形覆盖 思路:直接想发现这问题不容易,后来发现可以把圆看做区间(能把矩形面积覆盖),然后这个问题就容易解决了 #incl ...