从零学Python之入门(三)序列


Posted in Python onMay 25, 2014

sequence 序列

sequence(序列)是一组有顺序的元素的集合

(严格的说,是对象的集合,但鉴于我们还没有引入“对象”概念,暂时说元素)

序列可以包含一个或多个元素,也可以没有任何元素。

我们之前所说的基本数据类型,都可以作为序列的元素。元素还可以是另一个序列,以及我们以后要介绍的其他对象。

序列有两种:tuple(定值表; 也有翻译为元组) 和 list (表)

>>>s1 = (2, 1.3, 'love', 5.6, 9, 12, False)         # s1是一个tuple
>>>s2 = [True, 5, 'smile']                          # s2是一个list
>>>print s1,type(s1)
>>>print s2,type(s2)

tuple和list的主要区别在于,一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更。

一个序列作为另一个序列的元素

>>>s3 = [1,[3,4,5]]

空序列

>>>s4 = []

元素的引用

序列元素的下标从0开始:

>>>print s1[0]
>>>print s2[2]
>>>print s3[1][2]

由于list的元素可变更,你可以对list的某个元素赋值:

>>>s2[1] = 3.0
>>>print s2

如果你对tuple做这样的操作,会得到错误提示。

所以,可以看到,序列的引用通过s[<int>]实现, int为下标

其他引用方式

范围引用: 基本样式[下限:上限:步长]

>>>print s1[:5]             # 从开始到下标4 (下标5的元素 不包括在内)
>>>print s1[2:]             # 从下标2到最后
>>>print s1[0:5:2]          # 从下标0到下标4 (下标5不包括在内),每隔2取一个元素 (下标为0,2,4的元素)
>>>print s1[2:0:-1]         # 从下标2到下标1

从上面可以看到,在范围引用的时候,如果写明上限,那么这个上限本身不包括在内。

尾部元素引用

>>>print s1[-1]             # 序列最后一个元素
>>>print s1[-3]             # 序列倒数第三个元素

同样,如果s1[0:-1], 那么最后一个元素不会被引用 (再一次,不包括上限元素本身)

字符串是元组

字符串是一种特殊的元素,因此可以执行元组的相关操作。

>>>str = 'abcdef'
>>>print str[2:4]

总结

tuple元素不可变,list元素可变

序列的引用 s[2], s[1:8:2]

字符串是一种tuple

Python 相关文章推荐
浅析Python中的getattr(),setattr(),delattr(),hasattr()
Jun 14 Python
Python 12306抢火车票脚本 Python京东抢手机脚本
Feb 06 Python
python使用opencv驱动摄像头的方法
Aug 03 Python
Python3内置模块random随机方法小结
Jul 13 Python
python内存监控工具memory_profiler和guppy的用法详解
Jul 29 Python
python实现静态web服务器
Sep 03 Python
matplotlib实现显示伪彩色图像及色度条
Dec 07 Python
wxpython自定义下拉列表框过程图解
Feb 14 Python
python实现PCA降维的示例详解
Feb 24 Python
python实现简单的购物程序代码实例
Mar 03 Python
python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例
Mar 06 Python
Python 恐龙跑跑小游戏实现流程
Feb 15 Python
从零学Python之入门(二)基本数据类型
May 25 #Python
Python tempfile模块学习笔记(临时文件)
May 25 #Python
Python logging模块学习笔记
May 24 #Python
Python学习笔记之常用函数及说明
May 23 #Python
从零学python系列之教你如何根据图片生成字符画
May 23 #Python
从零学python系列之从文件读取和保存数据
May 23 #Python
从零学python系列之浅谈pickle模块封装和拆封数据对象的方法
May 23 #Python
You might like
德劲1104的电路分析与改良
2021/03/01 无线电
php 处理上百万条的数据库如何提高处理查询速度
2010/02/08 PHP
php实现快速排序的三种方法分享
2014/03/12 PHP
php 删除cookie方法详解
2014/12/01 PHP
PHP实现的sqlite数据库连接类
2014/12/12 PHP
codeigniter显示所有脚本执行时间的方法
2015/03/21 PHP
php metaphone()函数及php localeconv() 函数实例解析
2016/05/15 PHP
PHP笛卡尔积实现算法示例
2018/07/30 PHP
PhpStorm连接服务器并实现自动上传功能
2020/12/09 PHP
js 代码集(学习js的朋友可以看下)
2009/07/22 Javascript
Jquery实战_读书笔记2 选择器
2010/01/22 Javascript
javascript跑马灯悬停放大效果实现代码
2012/12/12 Javascript
JS localStorage实现本地缓存的方法
2013/06/22 Javascript
jquery实现从数组移除指定的值
2015/06/24 Javascript
JS实现常见的TAB、弹出层效果(TAB标签,斑马线,遮罩层等)
2015/10/08 Javascript
用JS动态设置CSS样式常见方法小结(推荐)
2016/11/10 Javascript
Ionic+AngularJS实现登录和注册带验证功能
2017/02/09 Javascript
使用canvas及js简单生成验证码方法
2017/04/02 Javascript
基于JS对象创建常用方式及原理分析
2017/06/28 Javascript
基于jQuery实现无缝轮播与左右点击效果
2018/05/13 jQuery
vue.js的双向数据绑定Object.defineProperty方法的神奇之处
2019/01/18 Javascript
JavaScript检测是否开启了控制台(F12调试工具)
2020/10/02 Javascript
微信小程序实现可长按移动控件
2020/11/01 Javascript
基于JavaScript实现轮播图效果
2021/01/02 Javascript
[03:17]2014DOTA2 国际邀请赛中国区预选赛 四强专访
2014/05/23 DOTA
使用Python中的线程进行网络编程的入门教程
2015/04/15 Python
Python实现对一个函数应用多个装饰器的方法示例
2018/02/09 Python
tensorflow实现简单逻辑回归
2018/09/07 Python
Python爬虫动态ip代理防止被封的方法
2019/07/07 Python
tensorflow:指定gpu 限制使用量百分比,设置最小使用量的实现
2020/02/06 Python
印度尼西亚手表和包包商店:Urban Icon
2019/12/12 全球购物
linux面试题参考答案(1)
2016/01/22 面试题
幼儿园安全检查制度
2014/01/30 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书
乡镇党建工作汇报材料
2014/10/27 职场文书
升职自荐信范文
2015/03/27 职场文书