tuple 和数组区别

news/2024/7/19 11:47:16 标签: python, 爬虫, flask

元组(tuple)和数组(array)都是 Python 中用于存储多个值的数据结构,但它们在实现和使用上有一些区别。

  1. 元组是不可变的,而数组是可变的。即元组一旦创建,其内容就不能被修改,而数组可以进行添加、删除、更改等操作。

  2. 元组中的元素可以是任何类型的对象,包括不同类型的对象;而数组通常要求所有元素具有相同的数据类型,以便在底层存储时保持高效。

  3. 元组支持索引和切片操作,类似于字符串,但是数组有更多的方法和功能,如添加/删除元素、排序、搜索等。

  4. 在 Python 中,元组通常用于表示不可变的、有序的数据集合,例如函数返回多个值时、访问字典键值对、格式化字符串等场景;而数组通常用于存储大量同类型的数据,例如科学计算或者数值运算。

以下是一个简单的示例,展示了元组和数组的一些基本操作:


python复制代码

# 创建一个元组
my_tuple = (1, 2, 3)

# 创建一个数组
import array
my_array = array.array('i', [1, 2, 3])

# 访问元组和数组中的元素
print(my_tuple[0]) # 输出 1
print(my_array[1]) # 输出 2

# 尝试修改元组和数组中的元素
my_tuple[0] = 4 # 这行代码将抛出 TypeError 异常,因为元组是不可变的
my_array[1] = 5 # 将数组中的第二个元素修改为 5

# 在数组末尾添加一个新元素
my_array.append(4)

# 获取数组中元素的数量
print(len(my_array)) # 输出 4

# 将数组转换为列表
my_list = my_array.tolist()



在上面的示例中,我们创建了一个包含三个整数的元组和数组,并演示了如何访问和修改它们的元素。需要注意的是,尝试修改元组中的元素会导致 TypeError 异常,而向数组中添加或删除元素是可以的。此外,我们还展示了如何获取数组中的元素数量,并将其转换为列表。

f6439aa0d2b7c064fbe4910de6c23814.jpeg

2b857c7af8e54e22d6cbba3eec8608d8.jpeg


http://www.niftyadmin.cn/n/460997.html

相关文章

电子电气架构 —— OEM关于DTC具体实现相关见解

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 我们当前遇到的几乎所有的成长问题都可以归结道目光短浅、及时满足的天性上,不过在现代社会,用避难趋易和急于求成来指代他们更贴切。 本文主要讲…

6月份读书学习好文记录

看看CHATGPT在最近几个月的发展趋势 https://blog.csdn.net/csdnnews/article/details/130878125?spm1000.2115.3001.5927 这是属于 AI 开发者的好时代,有什么理由不多去做一些尝试呢。 北大教授陈钟谈 AI 未来:逼近 AGI、融进元宇宙,开源…

Threadlocal 必会的9个知识点

1.什么是ThreadLocal?它在多线程环境下有什么用处? ThreadLocal是在多线程环境下提供的一种简单的机制,使得每个线程都能拥有一个独立的变量副本。它避免了线程安全问题,并提高了程序的并发性能。 2.ThreadLocal是如何工作的&am…

【Redis】2、Redis 的 Java 客户端(Jedis 和 SpringDataRedis)

目录 零、Redis 的 Java 客户端有哪些?二、Jedis 客户端(1) 引依赖(2) 连接 Redis 服务并测试(3) Redis 连接池 三、SpringDataRedis 介绍四、SpringBoot 中集成 SpringDataRedis(1) 引入依赖(2) 配置文件中书写相关配置(3) RedisTemplate 的默认序列化方式(4) 自定…

看完这篇 教你玩转渗透测试靶机vulnhub—Emplre: Breakout

Vulnhub靶机Emplre: Breakout渗透测试详解 Vulnhub靶机介绍:Vulnhub靶机下载:Vulnhub靶机安装:Vulnhub靶机漏洞详解:①:信息收集:②:登入后台:③:GetShell:④…

Spring 中的 Bean

前言 欢迎来到本篇文章,鸽了好久了,今天继续写下 Spring 的内容:Spring 中 Bean 的基本概念、基本写法和 3 种实例化 Bean 的方式等。 什么是 Bean? 我们回顾下,什么是 Bean?这在上一篇文章中说过了&…

【为什么程序员不适合在家远程办公?】

随着信息技术的飞速发展,越来越多的程序员可以选择在家办公。然而,尽管这种工作模式具有灵活性和便利性,但并不是每个程序员都适合在家办公。本文将讨论一些原因,解释为何程序员不适合在家办公。 缺乏社交互动:在家办公…

树莓派与STM32之间串口通信

目录 一、树莓派串口通信模块介绍 二、树莓派蓝牙、串口引脚映射对换步骤 1.启动串口 2. 禁用蓝牙(硬件串口与mini串口映射对换) 3.验证是否交换成功 三、树莓派安装mini串口调试助手 四、树莓派与电脑串口调试 五、树莓派与STM32串口调试 一、树…