广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python数据类型-序列sequence
  • 858
分享到

Python数据类型-序列sequence

2024-04-02 19:04:59 858人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录1概述2基本操作2.1索引 2.2切片 2.3加 2.4乘1 概述 在前面,我们已经对python学习做了系统的知识梳理(Python思维导图),我

1 概述

在前面,我们已经对python学习做了系统的知识梳理(Python思维导图),我们接下来把知识点分节进行细讲。这一节,我们讲解序列。

在介绍 Python 的常用数据类型之前,我们先看看 Python 最基本的数据结构 -——序列(sequence)。序列的一个特点就是根据索引(index,即元素的位置)来获取序列中的元素,第一个索引是 0,第二 个索引是 1,以此类推。

所有序列类型都可以进行某些通用的操作,比如:

索引( indexing )
分片( sliceing )
迭代( iteration )
加( adding )
乘( multiplying )
除了上面这些,我们还可以检查某个元素是否属于序列的成员,计算序列的长度等等。
重点讲索引和切片。

2 基本操作

2.1 索引 

序列中的元素可以通过索引获取,索引从 0 开始。看看下面的例子:

>>> nums = [1, 2, 3, 4, 5] # 列表
>>> nums[0] 
1 
>>> nums[1]
2 
>>> nums[-1] # 索引 -1 表示最后一个元素 
5 
>>> s = 'abcdef' # 字符串 
>>> s[0] 
'a' 
>>> s[1] 
'b' 
>>> 
>>> a = (1, 2, 3) # 元组 
>>> a[0] 
 1 
 >>> a[1] 
 2

注意到 : -1 则代表序列的最后一个元素, -2 代表倒数第二个元素,以此类推。

2.2 切片 

索引用于获取序列中的单个元素,而分片则用于获取序列的部分元素。分片操作需要提供两个索引作为 边界,中间用冒号相隔,比如:

>>> numbers = [1, 2, 3, 4, 5, 6] 
>>> numbers[0:2] # 列表分片 
[1, 2] 
>>> numbers[2:5] 
[3, 4, 5] 
>>> s = 'hello, world' # 字符串分片 
>>> s[0:5] 
'hello' 
>>> a = (2, 4, 6, 8, 10) # 元组分片 
>>> a[2:4] 
(6, 8)

这里需要特别注意的是,分片有两个索引,第 1 个索引的元素是包含在内的,而第 2 个元素的索引 则不包含在内,也就是说,numbers[2:5] 获取的是 numbers[2], numbers[3], numbers[4],没有包括 numbers[5] 。

下面列举使用分片的一些技巧:

  • (1)访问最后几个元素
  • (2)使用步长

访问最后几个元素 :

假设需要访问序列的最后 3 个元素,我们当然可以像下面这样做:

>>> numbers = [1, 2, 3, 4, 5, 6] 
>>> numbers[3:6] 
[4, 5, 6]

有没有更简洁的方法呢?想到可以使用负数形式的索引,你可能会尝试这样做:

>>> numbers = [1, 2, 3, 4, 5, 6] 
>>> numbers[-3:-1] # 实际取出的是 numbers[-3], numbers[-2] 
[4, 5] 
>>> numbers[-3:0] # 左边索引的元素比右边索引出现得晚,返回空序列 
[]

上面的两种使用方式并不能正确获取序列的最后 3 个元素, Python 提供了一个捷径 :

(也就是说,如果希望分片包含最后一个元素,可将第 2 个索引置为空)

>>> numbers = [1, 2, 3, 4, 5, 6, 7, 8] 
>>> numbers[-3:] 
[6, 7, 8] 
>>> numbers[5:] 
[6, 7, 8]

如果要复制整个序列,可以将两个索引都置为空:

>>> numbers = [1, 2, 3, 4, 5, 6, 7, 8] 
>>> nums = numbers[:] 
>>> nums 
[1, 2, 3, 4, 5, 6, 7, 8]

使用步长 :

使用分片的时候,步长默认是 1 ,即逐个访问,我们也可以自定义步长,比如:

>>> numbers = [1, 2, 3, 4, 5, 6, 7, 8] 
>>> numbers[0:4] 
[1, 2, 3, 4] 
>>> numbers[0:4:1] # 步长为 1,不写也可以,默认为 1 
[1, 2, 3, 4] 
>>> numbers[0:4:2] # 步长为 2,取出 numbers[0], numbers[2] 
[1, 3]
>>> numbers[::3] # 等价于 numbers[0:8:3],取出索引为 0, 3, 6 的元素 
[1, 4, 7]

另外,步长也可以是负数,表示从右到左取元素:

>>> numbers = [1, 2, 3, 4, 5, 6, 7, 8] 
>>> numbers[0:4:-1] 
[] 
>>> numbers[4:0:-1] # 取出索引为 4, 3, 2, 1 的元素 
[5, 4, 3, 2] 
>>> numbers[4:0:-2] # 取出索引为 4, 2 的元素 
[5, 3] 
>>> numbers[::-1] # 从右到左取出所有元素 
[8, 7, 6, 5, 4, 3, 2, 1] 
>>> numbers[::-2] # 取出索引为 7, 5, 3, 1 的元素 
[8, 6, 4, 2] 
>>> numbers[6::-2] # 取出索引为 6, 4, 2, 0 的元素 
[7, 5, 3, 1] 
>>> numbers[:6:-2] # 取出索引为 7 的元素 
[8]

这里总结一下使用分片操作的一些方法, 分片的使用形式是 :

# 左索引:右索引:步长 
left_index:right_index:step

要牢牢记住的是 :

左边索引的元素包括在结果之中,右边索引的元素不包括在结果之中;
当使用一个负数作为步长时,必须让左边索引大于右边索引;
对正数步长,从左向右取元素;对负数步长,从右向左取元素;

2.3 加 

序列可以进行「加法」操作,如下:

>>> [1, 2, 3] + [4, 5, 6] # 「加法」效果其实就是连接在一起 
[1, 2, 3, 4, 5, 6] 
>>> (1, 2, 3) + (4, 5, 6) 
(1, 2, 3, 4, 5, 6) 
>>> 'hello, ' + 'world!'
'hello, world!' 
>>> [1, 2, 3] + 'abc' 
Traceback (most recent call last): 
File "<stdin>", line 1, in <module> 
TypeError: can only concatenate list (not "str") to list
#这里需要注意的是:两种相同类型的序列才能「加法」操作。

2.4 乘

序列可以进行「乘法」操作,比如: 

>>> 'abc' * 3 
'abcabcabc' 
>>> [0] * 3 
[0, 0, 0] 
>>> [1, 2, 3] * 3 
[1, 2, 3, 1, 2, 3, 1, 2, 3]

到此这篇关于Python数据类型-序列sequence的文章就介绍到这了,更多相关Python数据类型 序列sequence内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python数据类型-序列sequence

本文链接: https://www.lsjlt.com/news/162590.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python数据类型-序列sequence
    目录1概述2基本操作2.1索引 2.2切片 2.3加 2.4乘1 概述 在前面,我们已经对Python学习做了系统的知识梳理(Python思维导图),我...
    99+
    2022-11-12
  • python序列数据类型之序列数据的基本操作
      1. 序列的长度、最大值、最小值、求和  通过内置函数len()、max() .minO可以获取序列的长度、序列中元索的最大值、序列中元素的最小值。通过内置函数sum()可以获取列表或元组中的各元素之和:如果有非数值元索,则导致TyeE...
    99+
    2023-06-02
  • Python语言中的数据类型-序列
    目录一、什么是序列数据类型?二、序列数据类型的基本操作1.序列的通用方法2.通过索引访问数据3.同类型的序列进行拼接4.判断序列成员5.序列的排序操作6.内置函数all()与any(...
    99+
    2022-11-13
  • 【Python】数据类型之列表
    知识目录 一、定义和遍历1.1 定义列表1.2 打印和截取列表1.3 遍历列表 二、增删改查2.1 更新和删除列表2.3 脚本操作符 * + in 三、函数和方法3.1 函数3.2...
    99+
    2023-09-06
    python 开发语言
  • Python基本数据类型__列表
    6、列表[list]在Python中列表用[]来表示,中间的元素可以是任何类型,用逗号分隔。列表是可变类型。列表的常用操作:在列表中我觉得比较重要的就属增删改查了,还有一些类似于字符串的操作;、定义列表:qq = [1,2,3,4,'12'...
    99+
    2023-01-31
    数据类型 列表 Python
  • python序列类型有哪些
    这篇文章主要介绍了python序列类型有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python序列类型有哪些文章都会有所收获,下面我们一起来看看吧。   python...
    99+
    2022-10-19
  • Python如何把不同类型数据的json序列化
    现代网络应用Web APP或大型网站的后台一般只有一个,然后客户端却是各种各样的(iOS, android, 浏览器), 而且客户端的开发语言很可能与后台的开发语言不一样。这时我们需要后...
    99+
    2022-06-02
    python json序列化 python 数据序列化
  • Python怎么把不同类型数据的json序列化
    这篇文章将为大家详细讲解有关Python怎么把不同类型数据的json序列化,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型...
    99+
    2023-06-14
  • Python数据类型详解(二)列表
    一.基本数据类型   整数:int   字符串:str(注:t等于一个tab键)   布尔值: bool   列表:list (元素的集合)   列表用[]   元祖:tuple   元祖用()   字典...
    99+
    2022-06-04
    详解 数据类型 列表
  • Python标准数据类型-List(列表)
    ✅作者简介:CSDN内容合伙人、阿里云专家博主、51CTO专家博主、新星计划第三季python赛道Top1🏆 📃个人主页:hacker707的csdn博客 ...
    99+
    2023-09-10
    python list pycharm 原力计划
  • python的序列类型有哪些
    python中序列的类型:1.可变序列,创建序列后可以改变序列的元素;2.不可变序列,创建序列后序列的元素无法修改;3.容器序列,存放的是实际对象的引用;4.扁平序列,存放的是对象的值;python中序列的类型有以下几种可变序列可变序列是指...
    99+
    2022-10-12
  • python语法range()序列类型range
    序列类型(包括列表等)可以使用运算符in和not in检查range对象表示的整数序列中是否存在指定的整数,3 in range(5)检查是否包含3,返回 True可以调用内置函数r...
    99+
    2022-11-12
  • Python Pandas 修改表格数据类型 DataFrame 列的顺序案例
    目录一、修改表格数据类型 DataFrame 列的顺序1.1主要知识点1.2创建 python 文件1.3运行结果 二、Pandas 如何统计某个数据列的空值个数2.1主要...
    99+
    2022-11-11
  • SQL列的数据类型分类
    SQL列的数据类型分类:     Unicode数据: 1.nchar 2.nvarchar 3.ntext 说明: Unicode支持的字符范围更大。存储 Unicode 字符所需要的空间更大。 傻瓜式教程...
    99+
    2017-03-27
    SQL列的数据类型分类
  • python数据类型-列表创建和操作
    列表创建和操作a)  创建列表b)  基本操作c)  遍历与其说  列表  它是一个数据类型,用起来 更像一个灵活多变的数据存储方案 创建列表创建列表例子player = 'mao 80 50'   mao = '100 60 0'   z...
    99+
    2023-01-31
    数据类型 操作 列表
  • 深入了解Python数据类型之列表
    一.基本数据类型 整数:int 字符串:str(注:t等于一个tab键) 布尔值: bool 列表:list (元素的集合) 列表用[] 元祖:tuple 元祖用() 字典:dict 注:所有的数据类型都存...
    99+
    2022-06-04
    数据类型 列表 Python
  • python列表类型
    列表类型简介 列表类型是一个容器,它里面可以存放任意数量、任意类型的数据。 例如下面的几个列表中,有存储数值的、字符串的、内嵌列表的。不仅如此,还可以存储其他任意类型。 >>> L = [1, 2, 3, 4] >...
    99+
    2023-01-30
    类型 列表 python
  • python的序列类型range怎么创建
    这篇“python的序列类型range怎么创建”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“python的序列类型range...
    99+
    2023-06-26
  • Python数据类型 -数值类型(整数,
    一、整数:1)整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。如:num01 =100...
    99+
    2023-01-31
    整数 数值 数据类型
  • python列表中数据类型的示例分析
    这篇文章给大家分享的是有关python列表中数据类型的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作