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中的round()方法
May 15 Python
Python的Django框架中的表单处理示例
Jul 17 Python
python基础知识小结之集合
Nov 25 Python
pandas对指定列进行填充的方法
Apr 11 Python
Python批量发送post请求的实现代码
May 05 Python
Python实现读写INI配置文件的方法示例
Jun 09 Python
tensorflow实现简单逻辑回归
Sep 07 Python
Python中类的创建和实例化操作示例
Feb 27 Python
python实现共轭梯度法
Jul 03 Python
python脚本之一键移动自定格式文件方法实例
Sep 02 Python
如何基于python把文字图片写入word文档
Jul 31 Python
Python: glob匹配文件的操作
Dec 11 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
smtp邮件发送一例
2006/10/09 PHP
ThinkPHP的Widget扩展实例
2014/06/19 PHP
PHP使用PHPExcel删除Excel单元格指定列的方法
2016/07/06 PHP
PHP抽象类和接口用法实例详解
2019/07/20 PHP
ie focus bug 解决方法
2009/09/03 Javascript
JavaScript 学习笔记(十六) js事件
2010/02/01 Javascript
ASP.NET jQuery 实例3 (在TextBox里面阻止复制、剪切和粘贴事件)
2012/01/13 Javascript
JS对img进行操作(换图片/切图/轮换/停止)
2013/04/17 Javascript
Function.prototype.call.apply结合用法分析示例
2013/07/03 Javascript
JS取文本框中最小值的简单实例
2013/11/29 Javascript
获取鼠标在div中的相对位置的实现代码
2013/12/30 Javascript
JavaScript静态类型检查工具FLOW简介
2015/01/06 Javascript
jQuery点缩略图弹出层显示大图片
2015/02/13 Javascript
JQuery节点元素属性操作方法
2015/06/11 Javascript
基于jQuery实现仿微博发布框字数提示
2016/07/27 Javascript
基于javascript实现按圆形排列DIV元素(三)
2016/12/02 Javascript
jQuery实现的分页功能示例
2017/01/22 Javascript
JavaScript中toLocaleString()和toString()的区别实例分析
2018/08/14 Javascript
jQuery插件实现的日历功能示例【附源码下载】
2018/09/07 jQuery
详解html-webpack-plugin插件(用法总结)
2018/09/12 Javascript
解决layui的table插件无法多层级获取json数据的问题
2019/09/19 Javascript
Vue实现点击当前元素以外的地方隐藏当前元素(实现思路)
2019/12/04 Javascript
vscode调试node.js的实现方法
2020/03/22 Javascript
解决removeEventListener 无法清除监听的问题
2020/10/30 Javascript
在Python下进行UDP网络编程的教程
2015/04/29 Python
浅谈Python中的作用域规则和闭包
2018/03/20 Python
python opencv实现图片旋转矩形分割
2018/07/26 Python
pycharm在调试python时执行其他语句的方法
2018/11/29 Python
python学习--使用QQ邮箱发送邮件代码实例
2019/04/16 Python
利用Python检测URL状态
2019/07/31 Python
python使用itchat模块给心爱的人每天发天气预报
2019/11/25 Python
俄罗斯卫浴采暖及维修用品超级市场:Dkrussia
2020/05/12 全球购物
大学生自荐信
2013/12/11 职场文书
cf战队宣传语
2015/07/13 职场文书
Win11 Build 22000.829更新补丁KB5015882发布(附更新修复内容汇总)
2022/07/15 数码科技
JS前端轻量fabric.js系列之画布初始化
2022/08/05 Javascript