python中的序列类型

news/2024/12/20 13:46:09/

文章目录

    • 字符串
    • 列表
    • 元组
    • 由元组构成的列表

字符串

字符串是编程语言中的一种基本数据类型,用于表示一串字符序列。在Python中,字符串是不可变的,也就是说一旦字符串被创建,就无法修改其中的字符。

Python中的字符串可以用单引号或双引号括起来,例如:

my_string = 'Hello World'

字符串可以包含任意字符,包括字母、数字、符号以及特殊字符。可以对字符串进行各种操作,如截取、连接、查找、替换等。

以下是一些常用的字符串操作:

  • 索引:可以使用索引访问字符串中的单个字符,索引从0开始,例如 my_string[0] 返回字符 ‘H’。
  • 切片:可以使用切片操作提取字符串的一部分,例如 my_string[1:5] 返回字符串 ‘ello’。
  • 长度:可以使用 len() 函数获取字符串的长度,例如 len(my_string) 返回整数 11。
  • 连接:可以使用 + 操作符将两个字符串连接起来,例如 new_string = my_string + ' Python' 将返回新的字符串 ‘Hello World Python’。
  • 替换:可以使用 replace() 方法替换字符串中的部分内容,例如 new_string = my_string.replace('Hello', 'Hi') 将返回新的字符串 ‘Hi World’。
  • 查找:可以使用 find()index() 方法查找子字符串在字符串中的位置,例如 my_string.find('World') 返回整数 6。

字符串还有很多其他的操作和方法,可以根据具体需求选择使用。Python提供了丰富的字符串处理函数和库,简化了字符串的操作和处理。

列表

列表(List)是 Python 编程语言中的一种基本数据结构,用于存储一系列有序的元素。列表可以包含任意类型的元素,包括数字、字符串、布尔值、对象等。

列表的特点和使用方法如下:

  1. 列表的创建:可以使用方括号 []list() 函数来创建一个空列表,或者在方括号中用逗号分隔元素来创建一个带有初始值的列表。
empty_list = []
numbers = [1, 2, 3, 4, 5]
  1. 列表的索引:列表中的每个元素都有一个索引,从0开始逐个递增。可以通过索引来访问列表中的元素,负数索引表示从列表的末尾开始计数。
numbers = [1, 2, 3, 4, 5]
first_number = numbers[0]  # 获取第一个元素
last_number = numbers[-1]  # 获取最后一个元素
  1. 列表的切片:可以通过切片来获取列表中的一部分元素。切片使用冒号(:)来表示起始索引和结束索引(结束索引不包含在切片范围内)。
numbers = [1, 2, 3, 4, 5]
sublist = numbers[1:4]  # 获取索引为 1 到索引为 3(不包括)的元素
  1. 列表的操作:列表支持多种常见的操作,包括增加元素、删除元素、修改元素、查找元素等。
numbers = [1, 2, 3, 4, 5]
numbers.append(6)  # 在列表末尾添加一个元素
numbers.remove(3)  # 删除指定元素
numbers[1] = 10  # 修改指定位置的元素
found = 2 in numbers  # 检查元素是否存在于列表中

列表是一种可变(Mutable)的数据类型,即可以修改列表的内容。这使得列表在处理一系列数据时非常方便和灵活。

元组

元组(Tuple)是 Python 编程语言中的另一种基本数据结构,与列表类似,用于存储一系列有序的元素。元组也可以包含任意类型的元素,包括数字、字符串、布尔值、对象等。

但元组与列表有几个重要的区别:

  1. 不可变性:元组是不可变(Immutable)的数据类型,即元组一旦创建,就不能修改其内容。这意味着元组的元素不能被添加、删除或修改。
my_tuple = (1, 2, 3)
my_tuple[0] = 10  # 尝试修改元组的元素会引发错误
  1. 创建和访问:可以使用圆括号 ()tuple() 函数来创建一个空元组,或者在圆括号中用逗号分隔元素来创建一个带有初始值的元组。元组的元素可以通过索引来访问,与列表相同。
empty_tuple = ()
coordinates = (10, 20, 30)
x = coordinates[0]  # 获取第一个元素
  1. 元组的优势:虽然元组的不可变性限制了对元素的操作,但元组在以下方面具有优势:
    • 线程安全:元组可以作为多线程环境下的数据共享结构,因为它们是不可变的。
    • 索引优化:由于元组的不可变性, Python 可以对元组进行内部优化和索引操作,以提高代码的执行速度。
    • 字典键值:元组可以用作字典的键,而列表不行。这是因为元组的不可变性使得它可以作为哈希(Hash)对象。

尽管元组的修改能力较弱,但它们在不需要修改元素的情况下是一种非常有用的数据结构,特别是在函数之间传递多个值时,可以将多个值放在一个元组中,并返回元组以供其他代码使用。

由元组构成的列表

一个由元组构成的列表,即列表中的每个元素是一个元组。可以通过使用方括号 [] 和逗号 , 来创建一个由元组构成的列表。

例如,下面是一个由三个元组构成的列表:

my_list = [(1, 2), ("a", "b", "c"), (True, False)]

在这个例子中,my_list 是一个包含三个元组的列表。第一个元组 (1, 2) 包含两个整数元素,第二个元组 ("a", "b", "c") 包含三个字符串元素,最后一个元组 (True, False) 包含两个布尔值元素。

列表中的每个元素都可以通过索引来访问,这样就可以访问到每个元组的元素。例如,可以使用以下代码访问列表中第一个元组的第一个元素:

first_tuple = my_list[0]
first_element = first_tuple[0]
print(first_element)  # 输出: 1

类似地,也可以使用索引访问其他元组的元素。例如,要访问第二个元组的第三个元素,可以使用以下代码:

second_tuple = my_list[1]
third_element = second_tuple[2]
print(third_element)  # 输出: c

这样,通过列表和元组的结合,可以创建一个多层次的数据结构,用于存储和操作多个有序的元素。


http://www.ppmy.cn/news/1251766.html

相关文章

C++学不会?一篇文章带你快速入门

1. 命名空间 1.1 命名空间的概念 C命名空间是一种用于避免名称冲突的机制。它允许在多个文件中定义相同的函数、类或变量,而不会相互干扰。 1.2 命名空间的定义 namespace是命名空间的关键字,后面是命名空间的名字,然后后面一对 {},{}中即…

python音频处理wavfile VS. librosa

数据读取 ## 音频载入 import librosa from scipy.io import wavfile# wavfile wav_file demo.wav wf_sr, wf_audio wavfile.read(wav_file) # R1. wf_audio为未经归一化的原始音频采样点, 一般采用int16编码,即[-32768, 32767]# librosa # R1. 若sr不…

LeetCode(34)有效的数独【矩阵】【中等】

目录 1.题目2.答案3.提交结果截图 链接: 36. 有效的数独 1.题目 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗…

[操作系统] 大厂必问~虚拟内存系列

文章目录 4.1 什么是虚拟内存(Virtual Memory)?4.2 局部性原理4.3 虚拟存储器4.4 虚拟内存的技术实现4.5 页面置换算法OPT 页面置换算法(最佳页面置换算法)FIFO(First In First Out) 页面置换算法(先进先出页面置换算…

中国毫米波雷达产业分析4——毫米波雷达企业介绍

一、矽典微 (一)公司简介 矽典微致力于实现射频技术的智能化,专注于研发高性能无线技术相关芯片,产品广泛适用于毫米波传感器、下一代移动通信、卫星通信等无线领域。 整合自身在芯片、系统、软件、算法等领域的专业能力&#xf…

在PyCharm中配置PyQt5环境

在PyCharm中配置PyQt5环境 文章目录 1.安装第三方库2.PyQt5设计器3.PyUIC转换工具 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ&#x1…

【论文解读】基于生成式面部先验的真实世界盲脸修复

论文地址:https://arxiv.org/pdf/2101.04061.pdf 代码地址:https://github.com/TencentARC/GFPGAN 图片解释: 与最先进的面部修复方法的比较:HiFaceGAN [67]、DFDNet [44]、Wan 等人。[61] 和 PULSE [52] 在真实世界的低质量图像…

Youtube如何做SEO关键词挖掘

做好Youtube的SEO优化,可以使我们的视频得到更多的展示,更多的点击和观看,就能获得更多的粉丝和流量。一方面通过视频做引流到目标网站进行转化赚钱,另一方面可以通过涨粉接youtube广告赚钱。要做seo最关键的一步在于关键词的挖掘…