Python学习二:词典基础详解
作者:NiceCui
- 本文谢绝转载,如需转载需征得作者本人同意,谢谢。
- 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html
- 邮箱:moyi@moyibolg.com
- 日期:2017-11-19
Python学习二:词典基础详解
(学习不要求多,小计划能学会体验到乐趣便可)
一:介绍
Python词典其实和java中的HashMap很像,都是通过哈希表实现的,都是键值对存贮方式,也就是说,词典是一个数组,而数组的索引是键经过哈希函数处理后得到的。其实大家在编程语言的学习当中会遇到很多类似的存储方式,例如缓存系统Memcached就是以键值对进行存储数据的,Redis中也有,所以说键值对存储方式在编程语言中应用广泛。
词典是一个可以容纳多个元素的容器,但是词典不是以位置作为索引的,词典允许使用自定义的方式来建立数据的索引。
二:词典剖析
词典可以包含多个元素,每个元素以都好分割;
词典的元素包含两部分:键(Key)和 值(Value),键是数据的索引,值是数据的本身,键和值是一一对应的。
1 #!/usr/bin/python 2 #coding:utf-8 3 ''' 4 Created on 2017-11-19 5 @author: NiceCui 6 ''' 7 8 example_dict = {"a":1,"b":2,"c":3} 9 10 print(type(example_dict)) #输出 <type 'dict'> 11 12 print(example_dict["a"]) #输出 1 13 14 print(example_dict["b"]) #输出 2 15 16 print(example_dict["c"]) #输出 3
三:在词典中修改或增加一个元素的值
1 #!/usr/bin/python 2 #coding:utf-8 3 ''' 4 Created on 2017-11-19 5 @author: NiceCui 6 ''' 7 8 example_dict = {"a":1,"b":2,"c":3} 9 10 example_dict["a"] = 10 #修改 键 "a" 的值为 10 11 12 example_dict["b"] = 20 #修改 键 "b" 的值为 20 13 14 example_dict["d"] = 4 #增加 键是 "d" 值是 4 15 16 print(example_dict) #输出 :{'a': 10, 'c': 3, 'b': 20, 'd': 4}
构建一个新的空词典
#!/usr/bin/python #coding:utf-8 ''' Created on 2017-11-19 @author: NiceCui '''example_dict = {} #空词典print(example_dict) #输出 {}
词典不具备序列的连续的连续的有序性,所以适于存储结构松散的一组数据。
比如首付比例和税率可以存在同一个词典中:
1 #!/usr/bin/python 2 #coding:utf-8 3 ''' 4 Created on 2017-11-19 5 @author: NiceCui 6 ''' 7 8 9 example_dict ={"premium":0.2,"tax":0.15}
四:总结一下
本次学习中内容不多,只学习了一个知识点,这样会让自己的学习更加放松,不必担心只是体量过大,让自己的内心充满压抑,本文中写python语言都是使用的eclipse中安装的python插件,安装使用教程:http://www.cnblogs.com/NiceCui/p/7858107.html
在词典的 例子中,以及大部分的应用场景中,我们都使用字符串来作为词典的键。但是其他类型的数据,如数组和布尔值,也可以作为词典的键值,简单学习,玩着学习,学着快乐。
转载于:https://www.cnblogs.com/NiceCui/p/7862377.html
Python学习二:词典基础详解相关推荐
- Python 学习 正则re解析详解
一.学习正则的目的 应用场景举例: ① 提取xml文件里的信息 有些xml文件应用编辑器的一些读取库可能无法实现效果,但是用正则的话基本上能解决绝大多数参数匹配问题.如以下提取头条等app的user_ ...
- python类和对象基础详解
类和对象 1 面向对象的思想 面向过程:面向处理理,更多的是从计算机⻆角度思考,注重计算每⼀一个步骤,程序更 像是⼀一本cpu操作⼿手册. 面向对象:以日常生活的角度思考问题的解决,更接近人的思维方式 ...
- Python学习笔记:Import详解2
目录 目录 一 module 二 package 一模块 一 module 通常模块为一个文件,直接使用import来导入就好了.可以作为module的文件类型有".py".&qu ...
- React学习二(组件详解)
文章目录 一.React数据流 二.组件的特性 1.属性(props) (1)React Props默认值与标签属性限制 (2)应用-React组件切分与提取 2.状态(state) (1)state ...
- python学习:break用法详解
在执行while循环或者for循环时,只要循环条件满足,程序会一直执行循环体.但在某些场景,我们希望在循环结束前就强制结束循环. Python中有两种强制结束循环的方法: 1.continue语句:跳 ...
- Python基础学习之 os 模块详解
Python基础学习之 os 模块详解 文章目录 Python基础学习之 os 模块详解 1. 路径操作 1.1 os.chdir(),切换当前工作目录: 1.2 os.getcwd(),返回工作目录 ...
- Python str / bytes / unicode 区别详解 - Python零基础入门教程
目录 一.前言 二.Python str / bytes / unicode 区别 1.Python2.x 版本中 str / bytes / unicode 区别 2.Python3.x 版本中 s ...
- Java中大数据数组,Java基础学习笔记之数组详解
摘要:这篇Java开发技术栏目下的"Java基础学习笔记之数组详解",介绍的技术点是"java基础学习笔记.基础学习笔记.Java基础.数组详解.学习笔记.Java&qu ...
- 【强化学习】Sarsa算法详解以及用于二维空间探索【Python实现】
Sarsa算法 Sarsa算法,是基于Q-Learning算法.改动其实很小. 本文工作基于之前的Q-Learning的项目,如果有疑问可以看下面两个问题: [强化学习]Q-Learning算法详解以 ...
最新文章
- MyEclipse2017:MyEclipse2017软件破解图文教程(解决MyEclipse软件因试用期过期而无法再次使用的问题)
- Linux常用命令 积累
- 教你3行代码坑崩系统(哈哈哈哈)
- python计算期望值_机器学习:计算方差时为何除以n-1
- java程序linux自己更新自己,Linux下升级JAVA的一个小方法
- linux 本地端口关,Linux查看端口使用状态、关闭端口方法
- base64与base64url编码
- PE系统-微PE工具箱V2.1 - 有情怀的PE - PE中的战斗鸡无广告VIP精品
- 在pycharm中查看opencv版本
- springboot+pagehelper踩坑,PageHelper.startPage没有生效问题
- 基于单片机的单行道红绿灯仿真
- 专升本高数——第八章 多元函数积分学【学习笔记】
- 我的2013----默默的积累
- [转载]Eclipse照亮Java众生
- UnityShader案例篇—旋转、平移和缩放
- ECDH_SECP256R1 + X9.63 KDF-SHA256
- jQuery添加单选多选题的代码
- 牛掰!SSH端口嗅探方法及其防御技术
- Python ABC(抽象基类)
- 图象关于y轴对称是什么意思_函数图象关于y轴对称是什么函数