Python 序列类型

简介: 在程序设计中,经常会遇到要处理很多相同类型的数据的情况,比如统计全班同学的分数、统计每篇博客的浏览量、统计每种商品的单价等等。这时如果用一个变量存储一个数据,难免有些不便。Python 中的序列类型就能很好地解决这些问题。序列类型是组合数据类型的一类,能够将多个同类型或不同类型的数据组织起来,通过单一的表示使数据操作更有序更容易。序列类型是一个元素向量,元素之间存在先后关系,通过序号访问,元素之间不排他。字符串(str):由按照一定顺序组合在一起的字符来构成的,如:'Python'列表(list。

✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。
🍎个人主页:小嗷犬的博客
🍊个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。
🥭本文内容:Python 序列类型
更多内容请见👇

1.什么是序列类型

在程序设计中,经常会遇到要处理很多相同类型的数据的情况,比如统计全班同学的分数、统计每篇博客的浏览量、统计每种商品的单价等等。这时如果用一个变量存储一个数据,难免有些不便。Python 中的序列类型就能很好地解决这些问题。

序列类型是组合数据类型的一类,能够将多个同类型或不同类型的数据组织起来,通过单一的表示使数据操作更有序更容易。

序列类型是一个元素向量,元素之间存在先后关系,通过序号访问,元素之间不排他

Python中的主要序列类型:

  • 字符串(str):由按照一定顺序组合在一起的字符来构成的,如:
'Python'
  • 列表(list):包含0个或多个不同类型元素的可变序列类型,用方括号将元素包含在一起,如:
['Python', 1, 3.14, [2, 2.71], '555']
  • 元组(tuple):包含0个或多个不同类型元素的不可变序列类型,用圆括号将元素包含在一起,如:
('Python', 1, 3.14, (2, 2.71), '555')

2.通用序列类型操作

所有序列类型都可以进行一些特定的操作,包括索引、切片、连接、重复、成员资格检查、计算元素出现次数等。

2.1 索引

序列类型是一个元素向量,元素之间存在先后关系,所有元素都有序号(有时也称为偏移量或索引),序列中的元素可以通过序号进行访问,通过序号获取序列中特定位置的元素,就是索引:
l = ['Python', 1, 3.14, [2, 2.71], '555']
print(l[2])
除了可以从左往右地从 0开始索引,也可以从右往左由 -1开始索引,也可以混合使用:
l = ['Python', 1, 3.14, [2, 2.71], '555']
print(l[-2][1])
同时要注意,索引不能 越界

2.2 切片

在使用序列类型数据的过程中,常常会遇到需要获取其中一部分数据的情况。这时,可以使用分片,它是索引的一种扩展方式,返回的是序列类型数据中的一个片段,而不是一个单独的元素。

切片的语法格式为:

<字符串>[<左边界>:<右边界>:<步长>]

对于切片,有以下一些需要注意的地方,以字符串'Python'为例:

  • 包含左边界,不包含右边界。
  • s[:] 获得包含所有字符的新字符串,缺省的左边界为 0,右边界为序列长度。
  • s[0:2] 获得新字符串“Py”,即序号为 0 直到序号为 2 之前的所有字符。
  • s[2:] 获得新字符串“thon”,即从序号 2 到最后的所有字符。
  • s[:3] 获得新字符串“Pyt”,即从开头直到不包括序号为 3 之间的所有字符。
  • s[:-1] 获得新字符串“Python”,即从开头直到不包括最后一个字符之间 的所有字符。

2.2.1 步长

在切片时,除了可以指定左边界和右边界的序号外(或者不指定而使用缺省值),还可以增加第三个值,即步长。

步长用于规定切片的间隔:

s = '我是小嗷犬嗷嗷嗷'
print(s[1:6:2])
步长也可以是负数,即以相反的顺序来获取元素:
s = '我是小嗷犬嗷嗷嗷'
print(s[::-1])

2.3 连接和复制

+操作符可以连接两个类型相同的序列,得到一个新的该类型序列,就像它将两个字符串合并成一个新字符串一样:
s = '我是小嗷犬' + '嗷嗷嗷'
print(s)
*操作符也可以用于其他的序列类型,序列类型的值和一个整数 n相乘,得到将该序列类型值重复 n次的新的对象:
s = '我是小嗷犬' * 3
print(s)

2.4 in 和 not in

通过运算符 in可以判断某个元素是否在序列中,如果元素在序列中, in表达式返回 True,否则返回 False。运算符 not in则正好相反:
email = '123456@qq.com'
print('@qq.com' in email)

2.5 count()

当需要计算某个元素在序列中出现的次数时,使用序列的 count()方法可以很轻松的完成这个任务:
fruits = ['apple', 'banana', 'apple', 'orange', 'apple', 'banana']
print(fruits.count('apple'))

2.6 序列类型通用操作符和函数

序列类型有12个通用的操作符和函数:
操作符 描述
x in s 如果x是s的元素,返回True,否则返回False
x not in s 如果x不是s的元素,返回True,否则返回False
s + t 连接s和t
s * nn * s 将序列s复制n次
s[i] 索引,返回序列的第i个元素
s[i: j] 切片,返回包含序列s第i到j个元素的子序列(不包含第j个元素)
s[i: j: k] 步骤切片,返回包含序列s第i到j个元素以j为步数的子序列
len(s) 序列s的元素个数(长度)
min(s) 序列s中的最小元素
max(s) 序列s中的最大元素
s.index(x[, i[, j]]) 序列s中从i开始到j位置中第一次出现元素x的位置
s.count(x) 序列s中出现x的总次数
目录
相关文章
|
5月前
|
索引 Python
Python的变量和简单类型
本文介绍了Python中变量命名规则、常用变量类型及字符串操作。变量命名需遵循字母、数字和下划线组合,不能以数字开头且不可与关键字冲突。字符串支持单引号、双引号或三引号定义,涵盖基本输出、转义字符、索引、拼接等操作。此外,还详细解析了字符串方法如`islower()`、`upper()`、`count()`等,帮助理解字符串处理技巧。
109 15
|
26天前
|
安全 JavaScript Java
Python中None与NoneType的真相:从单例对象到类型系统的深度解析
本文通过10个真实场景,深入解析Python中表示“空值”的None与NoneType。从单例模式、函数返回值,到类型注解、性能优化,全面揭示None在语言设计与实际编程中的核心作用,帮助开发者正确高效地处理“无值”状态,写出更健壮、清晰的Python代码。
118 3
|
1月前
|
缓存 数据可视化 Linux
Python文件/目录比较实战:排除特定类型的实用技巧
本文通过四个实战案例,详解如何使用Python比较目录差异并灵活排除特定文件,涵盖基础比较、大文件处理、跨平台适配与可视化报告生成,助力开发者高效完成目录同步与数据校验任务。
75 0
|
1月前
|
IDE API 开发工具
Python类型注解:让代码“开口说话”的隐形助手
Python类型注解为动态语言增添类型信息,提升代码可读性与健壮性。通过变量、函数参数及返回值的类型标注,配合工具如mypy、IDE智能提示,可提前发现类型错误,降低调试与协作成本。本文详解类型注解的实战技巧、生态支持及最佳实践,助你写出更高质量的Python代码。
105 0
|
4月前
|
Python
Python技术解析:了解数字类型及数据类型转换的方法。
在Python的世界里,数字并不只是简单的数学符号,他们更多的是一种生动有趣的语言,用来表达我们的思维和创意。希望你从这个小小的讲解中学到了有趣的内容,用Python的魔法揭示数字的奥秘。
112 26
|
4月前
|
人工智能 安全 IDE
Python 的类型安全是如何实现的?
本文探讨了 Python 的类型安全实现方式。从 3.5 版本起,Python 引入类型提示(Type Hints),结合静态检查工具(如 mypy)和运行时验证库(如 pydantic),增强类型安全性。类型提示仅用于开发阶段的静态分析,不影响运行时行为,支持渐进式类型化,保留动态语言灵活性。泛型机制进一步提升通用代码的类型安全性。总结而言,Python 的类型系统是动态且可选的,兼顾灵活性与安全性,符合“显式优于隐式”的设计哲学。
|
6月前
|
Rust JavaScript 前端开发
[oeasy]python075_什么是_动态类型_静态类型_强类型_弱类型_编译_运行
本文探讨了编程语言中的动态类型与静态类型、强类型与弱类型的概念。通过实例分析,如Python允许变量类型动态变化(如`age`从整型变为字符串),而C语言一旦声明变量类型则不可更改,体现了动态与静态类型的差异。此外,文章还对比了强类型(如Python,不允许隐式类型转换)和弱类型(如JavaScript,支持自动类型转换)的特点。最后总结指出,Python属于动态类型、强类型语言,对初学者友好但需注意类型混淆,并预告下期内容及提供学习资源链接。
159 22
|
4月前
|
存储 数据采集 大数据
Python推导式进阶指南:优雅初始化序列的科学与艺术
本文系统讲解Python推导式的用法与技巧,涵盖列表、字典、集合推导式及生成器表达式。通过代码示例和性能对比,展示推导式在数据结构初始化中的优势:简洁高效、执行速度快30%-50%。文章分析基础语法、核心应用场景(如序列构造、键值对转换、去重运算)及嵌套使用,并探讨使用边界与最佳实践,强调可读性优先原则。最后指出,合理运用推导式能显著提升代码质量和处理效率,同时避免过度复杂化的陷阱。
97 0
|
6月前
|
Python Windows
[oeasy]python076_int这个词怎么来的_[词根溯源]整数类型_int_integer_touch
本文探讨了“int”一词的起源及其与整数类型的关联。通过词根溯源,揭示“int”来源于“integer”,意为“完整的数”,与零碎的分数相对。同时分析了相关词汇如“tact”(接触)、“touch”(触摸)及衍生词,如“tangential”(切线的)、“intagible”(无形的)和“integral”(完整的、不可或缺的)。文章还结合编程语言特性,解释了Python作为动态类型、强类型语言的特点,并总结了整型变量的概念与意义。最后预告了后续内容,提供了学习资源链接。
165 11
|
7月前
|
索引 Python
python字符串类型及操作
本文主要讲解字符串类型的表示、操作符、处理函数、处理方法及格式化。内容涵盖字符串的定义、表示方法(单双引号、三引号)、索引与切片、特殊字符转义、常见操作符(如+、*、in等)、处理函数(如len()、str()、chr()等)、处理方法(如.lower()、.split()等)以及格式化方式(如.format())。通过实例代码详细介绍了字符串的各种用法和技巧,帮助读者全面掌握字符串操作。
208 2
python字符串类型及操作

热门文章

最新文章

推荐镜像

更多