Python内建序列通用操作6种实现方法


Posted in Python onMarch 26, 2020

数据结构式通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合,这些数据元素可以是数字或者字符,甚至可以是其他数据结构。在Python中,最基本的数据结构是序列(sequence)。序列中的每个元素被分配一个序号--即元素的位置,也称为索引。第一个元素索引是0,第二个则是1,一次类推。

Python包含6中内建的序列,即列表、元组、字符串、Unicode字符串、buffer对象和xrange对象。

通用序列操作:索引、分片、序列相加、乘法、成员资格、长度、最小值和最大值

1. 索引

序列中所有的元素都是有编号的--从0开始递增。可以通过编号分别对序列的元素进行访问。Python的序列也可以从右边开始索引,最右边的一个元素的索引为-1,想左开始递减。

>>> greeting='Hello' 
>>> greeting[2] 
'l' 
>>> greeting[-1] 
'o' 
>>> 'stringtesting'[3] #可以对任何一个字符串进行索引,该字符串的第三个索引为'i'字符 
'i' 
>>> fourth=raw_input('Year: ')[3] #可以对输入的字符串进行索引,这样对输入的字符串索引为3的感兴趣 
Year: 2014 
>>> fourth 
'4'

2. 分片

索引用来对单个元素进行访问,用分片可以对一定范围内的元素进行访问,分片通过冒号相隔的两个索引来实现。分片操作的实现需要提供两个索引作为边界,第一个索引的元素是包含在分片内的,第二个则不包含在分片内。

>>> number=[1,2,3,4,5,6,7,8,9,10] 
>>> number[2:4] #取索引为第二和第三的元素 
[3, 4] 
>>> number[-4:-1] #负数表明是从右开始计数 
[7, 8, 9] 
>>> number[-4:] #把第二个索引置空,表明包括到序列结尾的元素 
[7, 8, 9, 10] 
>>> number[:3] #同上,把第一个索引置空,表明包含序列开始的元素 
[1, 2, 3] 
>>> number[0:10:1] #默认在分片的时候,步长为1,这样指定步长为1,和默认的效果一样 
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 
>>> number[0:10:2] #这里指定步长为2,这样就会跳过某些序列元素 
[1, 3, 5, 7, 9] 
>>> number[10:0:-1] #步长也可以是负数,但是第一个索引一定要大于第二个索引 
[10, 9, 8, 7, 6, 5, 4, 3, 2] 
>>> number[10:0:-2]  
[10, 8, 6, 4, 2]

对于一个正数步长,Python会从序列的头部开始向右提取元素,直到最后一个元素,而对于负数步长,则是从序列的尾部开始向左提取元素,直到第一个元素

3. 序列相加

>>> [1,2,3]+[4,5,6] 
[1, 2, 3, 4, 5, 6] 
>>> 'Hello '+'World!' 
'Hello World!' 
>>> [1,2,3]+'Hello' 
Traceback (most recent call last): 
 File "<stdin>", line 1, in <module> 
TypeError: can only concatenate list (not "str") to list

最后一个例子,试图列表和字符串进行相加,但是出错了,虽然他们都是序列,但是是不同数据类型,不能相加

4. 乘法

用数字x剩以一个序列会生成新的序列,而在新的序列中,原来的序列将会被重复x次。

>>> 'python'*4 
'pythonpythonpythonpython' 
>>> [None]*4 #None为Python的内建值,这里创建长度为4的元素空间,但是什么元素也不包含 
[None, None, None, None]

5. 成员资格

可以使用in运算符来检查一个值是否在序列中,如果在其中,就返回Ture,如果不在,就返回False。

>>> permission='rw' 
>>> 'r' in permission 
True 
>>> 'x' in permission 
False

6. 长度、最小值和最大值

内建函数len、min和max分别返回序列所包含的元素的数量,序列中的最小元素和序列中的最大元素。

>>> number=[2,3,4,5,6,7,8,9,10] 
>>> len(number) 
9 
>>> min(number) 
2 
>>> max(number) 
10 
>>> min(4,3,5) #函数的参数不用一定是序列,也可以是多个数字 
3

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现定制交互式命令行的方法
Jul 03 Python
用Python实现随机森林算法的示例
Aug 24 Python
centos 安装python3.6环境并配置虚拟环境的详细教程
Feb 22 Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
Apr 02 Python
Python实现的字典排序操作示例【按键名key与键值value排序】
Dec 21 Python
python for和else语句趣谈
Jul 02 Python
Python OpenCV 使用滑动条来调整函数参数的方法
Jul 08 Python
Python连接SQLite数据库并进行增册改查操作方法详解
Feb 18 Python
django 实现简单的插入视频
Apr 07 Python
Tensorflow tensor 数学运算和逻辑运算方式
Jun 30 Python
经验丰富程序员才知道的8种高级Python技巧
Jul 27 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
Jan 27 Python
PyQt5 界面显示无响应的实现
Mar 26 #Python
Python基于class()实现面向对象原理详解
Mar 26 #Python
Python文件读写w+和r+区别解析
Mar 26 #Python
Python装饰器实现方法及应用场景详解
Mar 26 #Python
pycharm中导入模块错误时提示Try to run this command from the system terminal
Mar 26 #Python
Python多进程编程常用方法解析
Mar 26 #Python
简单了解python调用其他脚本方法实例
Mar 26 #Python
You might like
php微信公众平台示例代码分析(二)
2016/12/06 PHP
JavaScript 闭包在封装函数时的简单分析
2009/11/28 Javascript
javascript中关于break,continue的特殊用法与介绍
2012/05/24 Javascript
js 剪切板应用clipboardData详细解析
2013/12/17 Javascript
jQuery实现图像旋转动画效果
2016/05/29 Javascript
JS实现的自定义水平滚动字体插件完整实例
2016/06/17 Javascript
浅谈js中test()函数在正则中的使用
2016/08/19 Javascript
Bootstrap组件之下拉菜单,多级菜单及按钮布局方法实例
2017/05/25 Javascript
vue 中自定义指令改变data中的值
2017/06/02 Javascript
jQuery实现动态给table赋值的方法示例
2017/07/04 jQuery
原生js实现密码输入框值的显示隐藏
2017/07/17 Javascript
jQuery DOM节点的遍历方法小结
2017/08/15 jQuery
Vue精简版风格指南(推荐)
2018/01/30 Javascript
详解小程序缓存插件(mrc)
2018/08/17 Javascript
微信小程序中使用Async-await方法异步请求变为同步请求方法
2019/03/28 Javascript
JQuery animate动画应用示例
2019/05/14 jQuery
Python标准库inspect的具体使用方法
2017/12/06 Python
PyQt5每天必学之带有标签的复选框
2018/04/19 Python
将Django项目部署到CentOs服务器中
2018/10/18 Python
Python爬取成语接龙类网站
2018/10/19 Python
python实现狄克斯特拉算法
2019/01/17 Python
Python实现统计英文文章词频的方法分析
2019/01/28 Python
对python 中class与变量的使用方法详解
2019/06/26 Python
提升python处理速度原理及方法实例
2019/12/25 Python
django实现模型字段动态choice的操作
2020/04/01 Python
Python持续监听文件变化代码实例
2020/07/22 Python
Luxplus荷兰:以会员价购买美容产品等,独家优惠
2019/08/30 全球购物
财务助理岗位职责
2013/11/10 职场文书
农村婚礼证婚词
2014/01/10 职场文书
医学生自我评价
2014/01/27 职场文书
大学生个人求职信例文
2014/07/07 职场文书
尊师重教演讲稿
2014/09/04 职场文书
纪念九一八爱国演讲稿600字
2014/09/14 职场文书
2015年城乡环境综合治理工作总结
2015/07/24 职场文书
oracle DGMGRL ORA-16603报错的解决方法(DG Broker)
2021/04/06 Oracle
Python使用OpenCV实现虚拟缩放效果
2022/02/28 Python