Python-操作列表

列表是Python中最基础且强大的数据结构之一。本章将深入探讨如何高效地操作列表,包括遍历、数值列表生成、切片技巧、元组的使用,以及代码格式规范。  

4.1 遍历整个列表  

遍历列表是处理数据的基本操作。通过`for`循环,可以依次访问列表中的每个元素:  

fruits = ["apple", "banana", "cherry"]

for fruit in fruits:

    print(fruit)

4.1.1 深入研究循环

循环的每一次迭代都会将列表中的元素赋值给临时变量(如`fruit`),并在代码块中执行操作。  

4.1.2 在循环中执行更多操作

在循环内部,可以执行复杂逻辑,例如修改数据或调用函数:  

for fruit in fruits:

    print(fruit.upper()) # 输出大写形式

4.1.3 循环结束后执行操作

循环结束后,可以通过非缩进代码执行后续任务:  
 

print("所有水果已遍历完毕!")

4.2 避免缩进错误  

Python依赖缩进定义代码块,常见错误包括:  

- 忘记缩进:导致IndentationError。  

- 不必要的缩进:在无需缩进的代码行添加空格。  

- 遗漏冒号:在`for`或`if`语句后忘记写冒号(:)。  

4.3 创建数值列表  

4.3.1 使用range()函数

range(start, end, step)生成数字序列:  

numbers = list(range(1, 6)) # 输出 [1, 2, 3, 4, 5]

4.3.2 数值列表的统计计算

对数值列表使用内置函数:  

max_num = max(numbers) # 最大值

min_num = min(numbers) # 最小值

sum_num = sum(numbers) # 总和

4.3.3 列表推导式

快速生成列表的简洁语法:  

squares = [x**2 for x in range(1, 6)] # 输出 [1, 4, 9, 16, 25]

4.4 使用列表的一部分  

4.4.1 切片

通过索引截取子列表:  

numbers = [0, 1, 2, 3, 4]

sub_list = numbers[1:4] # 输出 [1, 2, 3]

4.4.2 遍历切片 

对切片后的列表进行循环:  

for num in numbers[:3]: # 遍历前3个元素

    print(num)

4.4.3 复制列表

使用切片或`copy()`方法创建独立副本:  

new_numbers = numbers[:] # 深拷贝

4.5 元组  

元组是不可变序列,适用于存储不应修改的数据。  

4.5.1 定义元组

使用圆括号定义:  

dimensions = (1920, 1080)

4.5.2 遍历元组

遍历方式与列表相同:  

for dim in dimensions:

    print(dim)

4.5.3 修改元组变量

虽然元组不可变,但可以重新赋值: 

4.6 设置代码格式  

遵循PEP 8规范提升代码可读性:  

- 缩进:每级缩进4个空格。  

- 行长:每行不超过79字符。  

- 空行:用空行分隔函数或逻辑块。  

- 运算符对齐:在复杂表达式中对齐运算符。  

4.7 小结  

本章涵盖了列表的核心操作,包括遍历、数值列表生成、切片、元组使用及代码格式化。掌握这些技能,可以更高效地处理数据并编写清晰的Python代码。  

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LabVIEW温度修正部件测试系统

LabVIEW温度修正部件测试系统 这个基于LabVIEW的温度修正部件测试系统旨在解决飞行器温度测量及修正电路的测试需求。该系统的意义在于提供一个可靠的测试平台,用于评估温度修正部件在实际飞行器环境中的性能表现,从而确保飞行器的安全性和可靠性。 系统…

vim的特殊模式-可视化模式

可视化模式:按 v进入可视化模式 选中 y复制 d剪切/删除 可视化块模式: ctrlv 选中 y复制 d剪切/删除 示例: (vim可视化模式的进阶使用:vim可视化模式的进阶操作-CSDN博客)

mysql重学(一)mysql语句执行流程

思考 一条查询语句如何执行?mysql语句中若列不存在,则在哪个阶段报错一条更新语句如何执行?redolog和binlog的区别?为什么要引入WAL什么是Changbuf?如何工作写缓冲一定好吗?什么情况会引发刷脏页删除语句会…

【Docker】Docker入门了解

文章目录 Docker 的核心概念Docker 常用命令示例:构建一个简单的 C 应用容器1. 创建 C 应用2. 创建 Dockerfile3. 构建镜像4. 运行容器 Docker 优势学习 Docker 的下一步 **一、Docker 是什么?****为什么 C 开发者需要 Docker?** **二、核心概…

使用langchain ollama gradio搭建一个本地基于deepseek r1的RAG问答系统

目录 简介 环境配置 具体实现 安装依赖 定义模型和prompt 加载检索文档 切割 向量存储 创建检索器 实例化 前端搭建 实现效果 小tips 简介 首先介绍一下使用的几个工具,模型和rag的步骤,注:这里只是简单描述一下,不展…

Python中的函数(下)

函数返回值 返回单个值 函数可以通过 return 语句返回一个值。一旦执行到 return 语句,函数就会停止执行,并将指定的值返回给调用者。例如: 返回多个值 实际上,Python函数只能返回一个值,但可以通过返回一个元组来模…

Spring Boot + Facade Pattern : 通过统一接口简化多模块业务

文章目录 Pre概述在编程中,外观模式是如何工作的?外观设计模式 UML 类图外观类和子系统的关系优点案例外观模式在复杂业务中的应用实战运用1. 项目搭建与基础配置2. 构建子系统组件航班服务酒店服务旅游套餐服务 3. 创建外观类4. 在 Controller 中使用外…

安卓(android)实现注册界面【Android移动开发基础案例教程(第2版)黑马程序员】

一、实验目的(如果代码有错漏,可查看源码) 1.掌握LinearLayout、RelativeLayout、FrameLayout等布局的综合使用。 2.掌握ImageView、TextView、EditText、CheckBox、Button、RadioGroup、RadioButton、ListView、RecyclerView等控件在项目中的…

Prompt提示词完整案例:让chatGPT成为“书单推荐”的高手

大家好,我是老六哥,我正在共享使用AI提高工作效率的技巧。欢迎关注我,共同提高使用AI的技能,让AI成功你的个人助理。 许多人可能会跟老六哥一样,有过这样的体验:当我们遇到一个能力出众或对事物有独到见解的…

智慧园区管理平台实现智能整合提升企业运营模式与管理效率

内容概要 在当今数字化的背景下,智慧园区管理平台正逐渐成为企业提升运营效率和管理模式的重要工具。这个平台汇聚了多种先进技术,旨在通过智能整合各类资源与信息,帮助企业实现全面的管理创新。 智慧园区管理平台不仅仅是一个数据处理工具…

Baklib如何提升企业知识管理效率与市场竞争力的五大对比分析

内容概要 在信息化时代,企业在知识管理方面面临着巨大的挑战与机遇。为了有效应对这些挑战,“Baklib”作为一个知识中台,通过其高度集成的数字化平台,为企业提供全方位的知识管理解决方案。特别是在以下五个领域,它展…

c++:vector

1.使用 1.1构造函数 常见的三种构造方式:空构造,拷贝构造,指定元素构造 1.2iterator begin和end也分为正向和反向。 注意:反向迭代器可以反向遍历是因为在定义rbegin和rend函数的时候把尾地址给到了rbegin,而不是说改…

C++17 搜索器教程:解锁高效搜索新姿势

C17搜索器教程:解锁高效搜索新姿势 C17搜索器简介 在C的发展历程中,C17是一个重要的里程碑,它引入了诸多实用的新特性,搜索器功能便是其中之一。此功能着重对std::search算法进行了强化,使其支持多种搜索策略&#x…

Transformer+vit原理分析

目录 一、Transformer的核心思想 1. 自注意力机制(Self-Attention) 2. 多头注意力(Multi-Head Attention) 二、Transformer的架构 1. 整体结构 2. 编码器层(Encoder Layer) 3. 解码器层(Decoder…

C语言自定义数据类型详解(二)——结构体类型(下)

书接上回,前面我们已经给大家介绍了如何去声明和创建一个结构体,如何初始化结构体变量等这些关于结构体的基础知识。下面我们将继续给大家介绍和结构体有关的知识: 今天的主题是:结构体大小的计算并简单了解一下位段的相关知识。…

【ComfyUI专栏】如何使用Git命令行安装非Manager收录节点

当前的ComfyUI的收录的自定义节点很多,但是有些节点属于新出来,或者他的应用没有那么广泛,Manager管理节点 有可能没有收录到,这时候 如果我们需要安装需要怎么办呢?这就涉及到我们自己安装这些节点了。例如下面的内容…

【Block总结】PKI 模块,无膨胀多尺度卷积,增强特征提取的能力|即插即用

论文信息 标题: Poly Kernel Inception Network for Remote Sensing Detection 作者: Xinhao Cai, Qiuxia Lai, Yuwei Wang, Wenguan Wang, Zeren Sun, Yazhou Yao 论文链接:https://arxiv.org/pdf/2403.06258 代码链接:https://github.com/NUST-Mac…

[OO ALV] OO ALV 基础显示

程序代码 REPORT z437_test_2025.DATA gt_spfli TYPE STANDARD TABLE OF spfli. " 内表DATA go_alv TYPE REF TO cl_gui_alv_grid. " 创建和管理ALV表格DATA gs_layout TYPE lvc_s_layo. " 存储ALV表格的布局信息*---------------------…

jQuery小游戏(二)

jQuery小游戏(二) 今天是新年的第二天,本人在这里祝大家,新年快乐,万事胜意💕 紧接jQuery小游戏(一)的内容,我们开始继续往下咯😜 游戏中使用到的方法 key…

Linux的常用指令的用法

目录 Linux下基本指令 whoami ls指令: 文件: touch clear pwd cd mkdir rmdir指令 && rm 指令 man指令 cp mv cat more less head tail 管道和重定向 1. 重定向(Redirection) 2. 管道(Pipes&a…