如何学python 第十一课 元组与字典

第十一课 元组与字典

欢迎回来。上一期的如何学python里,我们讨论了函数。我们今天将要学习的是两种类似于列表(list)类型的数据类型。我们先介绍’元组’(tuple),然后是’字典‘ (dictionary)。如果你还记得我们曾经讲过的列表类型,那么今天的内容对你来说应该挺简单的。如果你不记得了,请回去看看第七课。

元组

我们可以简单的把元组理解为不能被改变的列表类型。如果你去看别人写的文档,你会发现元组被描述为‘不可改变’(immutable)。

如果你还有印象,应该能记得列表类型里的值(们)是被方括号括起来的。而元组的值(们)则是被圆括号括起来的。下面我们来分别创建一个列表和一个元组。他们会有相同的值,以便于比较。

创建元组

首先来创建元组:

然后来创建列表:

创建完成了。他们拥有相同的值,但是我们无法修改元组里的值。

原文里试图用append方法来说明元组的值无法被改变。我觉得这不太严谨,因为不同类型的变量,拥有的方法(method)不尽相同,所以原文的实验并不准确。我这里用了直接赋值的方式演示。

字典

字典是一系列成对的关键字与值。想想日常生活中的词典,不也是字(词)与他们的释义么?

我们可以用字典做很多事情,比如以规范化的格式存储用户的输入,或者把存在字典里的值方便的输出到文本文档里。今天我们先试着构建一个简单的字典,然后了解几个字典类型的方法。

创建字典

我们来创建拥有两个词的字典如下:

一个词是Bidu,另一个是Gogle。相信通过这个例子大家很容易就明白了字典是怎么一回事儿。前面的bidu和gogle就是字典的关键字,冒号后面的则是关键字对应的值。多个‘关键字-值’之间,用英文逗号分隔。

接下来我们看三个字典对应的方法:

· .keys()

· .values()

· .items()

Keys():显示字典里的所有关键字。

Values()显示所有的值:(由于是中文所以被编码了,这里显示的是编码之后的状态)

Items()显示所有的关键字和他们的值(同时显示)。值得注意的是,字典类型本身虽然会返回一个列表类型(如果你不是太懂,看括号就行,方括号就是list,圆括号就是tuple元组),但是字典里的键值对(关键字-值)却以元组的形式存在。

小结

今天我们介绍了元组和字典。其实关于这两个东西好多可以学,但是现在的这些知识可以增加我们阅读别人代码的能力。字典是个非常有用的东西,我们稍后会对他们俩进行更多的介绍。

原文发布于微信公众号 - 玄魂工作室(xuanhun521)

原文发表时间:2016-08-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏软件测试经验与教训

Python学习笔记(八)- 四个小程序

35790
来自专栏互联网杂技

理解javascript闭包前,先理解作用域链

1. 全局作用域(Global Scope)   在代码中任何地方都能访问到的对象拥有全局作用域,一般来说以下几种情形拥有全局作用域:   (1)最外层函数和...

37350
来自专栏老司机的技术博客

宝宝都能学会的python编程教程9:dict和set

dict字典 dict和我们小时候用的字典很像,如果你想查一个汉字,你只需要根据某一个拼音就可以很快速的查询到它。 ? 在字典的索引表里(比如部首表)查这个字...

36350
来自专栏菜鸟计划

angularjs filter详解

过滤器(filter)正如其名,作用就是接收一个输入,通过某个规则进行处理,然后返回处理后的结果。 主要用在数据的格式化上,例如获取一个数组中的子集,对数组中的...

38980
来自专栏Python专栏

如何通过一些骚操作有效的控制Python类

17240
来自专栏Python小白进阶之旅

Python面试必备,看完轻轻松松拿到10k

平时我们几乎不可能用到的东西,像那些类里面的魔法方法,你还记得几个,这些可都是面试必备啊~

43080
来自专栏上善若水

s002android逆向安全初级篇之android smali语法总结

smali中有两类数据类型:基本类型和引用类型。 引用类型是指数组和对象,其他都是基础类型。

26740
来自专栏老司机的技术博客

人人都能学会的python编程教程9:dict和set

dict和我们小时候用的字典很像,如果你想查一个汉字,你只需要根据某一个拼音就可以很快速的查询到它。

62880
来自专栏工科狗和生物喵

【计算机本科补全计划】C++ Primer:String Vector标准库及迭代器的使用

正文之前 今天帮学妹选了一天的电脑配件,然后从中领悟:坐看狗东黑我钱,任他涨价我不动!!最后果断的用学妹的钱冲了个Plus,然后领了一堆券,最后学妹还省了30块...

420100
来自专栏Python攻城狮

正则表达式1.正则表达式概述2.re模块操作3.表示字符4.re模块的高级用法5.贪婪和非贪婪

在Python中需要通过正则表达式对字符串进行匹配的时候,可以使用一个模块,名字为re

24920

扫码关注云+社区

领取腾讯云代金券