Python教学入门:列表与元组

在这里插入图片描述

列表(Lists):

在这里插入图片描述

定义:

  • 列表是 Python 中最常用的数据类型之一,用于存储一组有序的元素。
  • 列表使用方括号 [] 定义,元素之间用逗号 , 分隔。

特点:

  • 列表是可变的(Mutable),可以修改、添加或删除元素。
  • 列表中的元素可以是不同的数据类型,甚至可以是另一个列表。

常用操作:

  • 访问元素:可以通过索引来访问列表中的元素,索引从 0 开始。
  • 修改元素:可以通过索引来修改列表中的元素。
  • 添加元素:可以使用 append()、insert() 等方法向列表中添加元素。
  • 删除元素:可以使用 remove()、pop()、del 等方法删除列表中的元素。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

代码示例:

# 定义一个空列表
my_list = []# 使用 append() 方法向列表末尾添加单个元素
my_list.append(1)
my_list.append(2)
print("After append():", my_list)  # 输出:[1, 2]# 使用 extend() 方法向列表末尾添加另一个列表的所有元素
another_list = [3, 4, 5]
my_list.extend(another_list)
print("After extend():", my_list)  # 输出:[1, 2, 3, 4, 5]# 使用 insert() 方法在指定位置插入元素
my_list.insert(0, 0)
print("After insert():", my_list)  # 输出:[0, 1, 2, 3, 4, 5]# 使用 remove() 方法删除列表中指定值的第一个元素
my_list.remove(3)
print("After remove():", my_list)  # 输出:[0, 1, 2, 4, 5]# 使用 pop() 方法删除并返回列表中指定索引的元素,默认删除最后一个元素
popped_element = my_list.pop(0)
print("Popped element:", popped_element)  # 输出:0
print("After pop():", my_list)  # 输出:[1, 2, 4, 5]# 使用 del 语句删除列表中指定索引的元素或整个列表
del my_list[1]
print("After del:", my_list)  # 输出:[1, 4, 5]# 删除整个列表
del my_list

list() 函数

在这里插入图片描述

在 Python 中,list() 函数是用于将其他可迭代对象(如元组、字符串、集合等)转换为列表的内置函数。
将元组转换为列表:

my_tuple = (1, 2, 3, 4, 5)
my_list = list(my_tuple)
print(my_list)  # 输出:[1, 2, 3, 4, 5]

将字符串转换为列表:

my_string = "hello"
my_list = list(my_string)
print(my_list)  # 输出:['h', 'e', 'l', 'l', 'o']

将集合转换为列表:

my_set = {1, 2, 3, 4, 5}
my_list = list(my_set)
print(my_list)  # 输出:[1, 2, 3, 4, 5]

将字典的键转换为列表:

my_dict = {'a': 1, 'b': 2, 'c': 3}
my_list = list(my_dict)
print(my_list)  # 输出:['a', 'b', 'c']

列表的排序函数

使用 sort() 方法:
在这里插入图片描述

sort() 方法用于原地对列表进行排序,即直接修改原列表,而不会返回新的列表。默认情况下,sort() 方法会按照升序对列表进行排序,也可以通过指定 reverse=True 参数来进行降序排序。

my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5]# 升序排序
my_list.sort()
print(my_list)  # 输出:[1, 1, 2, 3, 4, 5, 5, 6, 9]# 降序排序
my_list.sort(reverse=True)
print(my_list)  # 输出:[9, 6, 5, 5, 4, 3, 2, 1, 1]

使用 sorted() 函数:
在这里插入图片描述

sorted() 函数用于对列表进行排序,会返回一个新的已排序列表,而不会修改原列表。与 sort() 方法不同,sorted() 函数也可以接受任何可迭代对象作为参数,并返回一个新的列表。

my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5]# 升序排序
sorted_list = sorted(my_list)
print(sorted_list)  # 输出:[1, 1, 2, 3, 4, 5, 5, 6, 9]# 降序排序
sorted_list = sorted(my_list, reverse=True)
print(sorted_list)  # 输出:[9, 6, 5, 5, 4, 3, 2, 1, 1]

reverse() 函数:
在这里插入图片描述

my_list = [1, 2, 3, 4, 5]my_list.reverse()
print(my_list)  # 输出:[5, 4, 3, 2, 1]

元组(Tuples):

定义:

  • 元组是不可变的(Immutable)序列,类似于列表,但是元组中的元素不能被修改。
  • 元组使用圆括号 () 定义,元素之间用逗号 , 分隔。

特点:

  • 元组一旦创建,其元素不能被修改,但可以访问。
  • 元组可以包含不同数据类型的元素,甚至可以是另一个元组。

常用操作:

  • 访问元素:可以通过索引来访问元组中的元素,索引从 0 开始。
  • 元组是不可变的,因此不能修改、添加或删除元素。
# 定义一个元组
my_tuple = (1, 2, 3, 'a', 'b', 'c')# 访问元组元素
print(my_tuple[0])  # 输出:1
print(my_tuple[3])  # 输出:a# 元组是不可变的,无法修改元素
# my_tuple[0] = 10  # 会引发 TypeError 错误# 元组的元素可以是另一个元组
nested_tuple = ((1, 2), ('a', 'b'))
print(nested_tuple)  # 输出:((1, 2), ('a', 'b'))# 元组解构(Tuple unpacking)
x, y, z = my_tuple[:3]
print(x, y, z)  # 输出:1 2 3

比较:

# 列表和元组的比较# 列表适合存储可以变动的数据集合
# 比如记录学生的成绩
student_scores = [85, 92, 78, 90]# 元组适合存储一组不变的数据
# 比如一个点的坐标
point = (3, 4)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/340.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WebSocket发送与接收数据

创建websocket对象,参数为服务器websockets地址: websocket new WebSocket("ws:127.0.0.1:7001"); 1、发送文本数据 websocket.send(我太笨了,不知道你说的是啥) 2、发送对象数据 发送对象的话需要通过 JSON.parse() 和JSON.…

Java梳理

梳理 1.ResponseBody return “hello world!” 当需要返回一个值的时候,需要使用到ResponseBody RestControllerControllerResponseBody 1.1没有Controller就不能写 GetMapping("/hello") public String sayHello() { return "Hello, wor…

HQL,SQL刷题,尚硅谷(中级)

目录 相关表结构: 1、order_info表 2、order_detail表 题目及思路解析: 第一题,查询各品类销售商品的种类数及销量最高的商品 第二题 查询用户的累计消费金额及VIP等级 第三题 查询首次下单后第二天连续下单的用户比率 总结归纳&#xff1a…

【双指针】

目录 1. LeetCode 283. 移动零 1.1 题目描述 1.2 题目思路 1.3 实现代码 2. LeetCode 1089. 复写零 2.1 题目描述 2.2 题目思路 2.3 实现代码 3. LeetCode 202. 快乐数 3.1 题目描述 3.2 题目思路 3.3 实现代码 4. LeetCode 11. 盛水最多的容器 4.1 题目描述 …

Debian12 中重新安装MSSQL 并指定服务器、数据库、数据表字段的字符排序规则和默认语言等参数

在 Linux 上配置 SQL Server 设置 - SQL Server | Microsoft Learn 零、查看sql server 服务器支持的字符排序规则 SELECT Name from sys.fn_helpcollations() where name Like Chinese% go------ Chinese_PRC_CI_AI Chinese_PRC_CI_AI_WS Chinese_PRC_CI_AI_KS Chinese_PRC_…

CV 面试指南—深度学习知识点总结(3)

本期专栏文章: CV 面试指南—深度学习知识点总结(1)CV 面试指南—深度学习知识点总结(2)CV 面试指南—深度学习知识点总结(3)CV 面试指南—深度学习知识点总结(4)CV 面试指南—深度学习知识点总结(5)

FPGA中闪灯程序设计示例

在FPGA设计中,闪灯的作用主要是用于测试和验证设计的功能和性能。具体来说,闪灯可以作为一个可视化的指示器,通过控制LED灯的闪烁模式和频率,来显示FPGA的工作状态或调试信息。 例如,在设计过程中,可以编写…

政安晨:【Keras机器学习示例演绎】(二)—— 使用 DeepLabV3+ 进行多类语义分割

目录 简介 下载数据 创建 TensorFlow 数据集 构建 DeepLabV3 模型 训练 利用色图叠加进行推理 对验证图像进行推理 政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 收录专栏: TensorFlow与Keras机器学习实战 希望政安晨的博客能够对您有所裨益…

vue3 emits: [‘update:modelValue‘]

在 Vue.js 中,emits 选项用于声明组件可以触发的事件。[update:modelValue] 是 Vue 3 中用于自定义组件与 v-model 指令配合工作的特殊事件名。 当您使用 v-model 指令与自定义组件进行双向绑定时,Vue 内部实际上是在做以下操作: 将 value …

手动给docusaurus添加一个搜索

新版博客用docusaurus重构已经有些日子了,根据docusaurus的文档上也申请了Algolia,想一劳永逸的解决博客的搜索问题。但是流水有意,落花无情。 algolia总是不给我回复,我只能对着algolia的申请页面仰天长叹。 正常情况的申请 按照docusaur…

map基础知识

map 1.map 的定义和常用函数 1&#xff09;map 的定义 map 是一种关联容器&#xff0c;用于储存一组键值对<key-value pairs>&#xff0c;其中每个键都是唯一的&#xff1b; map 根据键的大小来自动排序&#xff0c;即 less<Key>&#xff0c;并且一般不会改变此…

函数调用栈Function Call Stack与递归

函数调用栈&#xff08;Function Call Stack&#xff09;是计算机内存中用于跟踪函数调用和返回的一种数据结构。在程序执行期间&#xff0c;每当一个函数被调用时&#xff0c;相关的信息&#xff08;例如函数参数、局部变量和返回地址&#xff09;都会被存储在栈内存中。当函数…

(十一)PostgreSQL的wal日志(2)-默认wal日志大小

PostgreSQL的wal日志(2)-默认wal日志大小 PostgreSQL的WAL&#xff08;Write-Ahead Logging&#xff09;日志文件默认大小为16MB是基于对性能和可靠性权衡的结果。这个默认值是在PostgreSQL早期版本中设定的&#xff0c;目的是在维持良好的系统性能和提高数据恢复能力之间找到…

Gitlab: Python项目CI/CD实践

目录 1. 说明 2. 准备工作 2.1 服务器 2.2 开发机hosts文件 2.3 项目 3. 步骤过程 3.1 建仓Fastapi T1 3.2 开发机测试构建与推送 ​编辑 3.3 在工作站添加gitlab-runner 3.4 提交代码&#xff0c;查看Pipelines结果 3.5 观察部署情况 4. 参考 1. 说明 分别以一个…

【2024 SCI一区】 基于DCS-BiLSTM-Attention的多元回归预测(Matlab实现)

【2024 SCI一区】 基于DCS-BiLSTM-Attention的多元回归预测&#xff08;Matlab实现&#xff09; 目录 【2024 SCI一区】 基于DCS-BiLSTM-Attention的多元回归预测&#xff08;Matlab实现&#xff09;效果一览基本介绍程序设计参考资料 效果一览 基本介绍 差异创意搜索算法&…

C++ 静态成员函数(二)

一、访问静态成员变量 静态成员函数可以通过作用域运算符::来访问类的静态成员变量和静态成员函数 静态成员函数不属于任何特定的对象&#xff0c;而是属于整个类&#xff0c;可以通过类名直接调用&#xff0c;无需创建类的实例。静态成员函数不能访问类的非静态成员变量和非…

设计模式学习笔记 - 开源实战一(下):通过剖析JDK源码学习灵活应用设计模式

概述 上篇文章我们讲解了工厂模式、建造者模式、适配器模式适配器模式在 JDK 中的应用&#xff0c;其中 Calendar 类用到了工厂模式和建造者模式&#xff0c; Collections 类用到了装饰器模式和适配器模式。学习的重点是让你了解&#xff0c;在真实的项目中模式的实现和应用更…

在 Linux 终端中创建目录

目录 ⛳️推荐 前言 在 Linux 中创建一个新目录 创建多个新目录 创建多个嵌套的子目录 测试你的知识 ⛳️推荐 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站 前言 在本系列的这一部…

Maven的dependencyManagement与dependencies区别

先说结论&#xff1a;Maven 使用dependencyManagement 元素来提供了一种管理依赖版本号的方式。 在maven多模块项目的pom文件中&#xff0c;有的小伙伴会发现最外层的pom文件和里面的pom文件有个地方不一样 如下图 父pom 子pom 一般来说是在maven的最外父工程pom文件里&…

npm内部机制与核心原理

npm 的核心目标&#xff1a; Bring the best of open source to you, your team and your company. npm 最重要的任务是安装和维护开源库。 npm 安装机制与背后思想 npm 的安装机制非常值得探究。Ruby 的 Gem&#xff0c;Python的pip都是全局安装机制&#xff0c;但是npm的安装…