当前位置: 首页 > article >正文

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代码。  


http://www.kler.cn/a/527198.html

相关文章:

  • Java内存模型 volatile 线程安全
  • Python - Quantstats量化投资策略绩效统计包 - 详解
  • 【线上问题定位处理】及【性能优化】系列文章
  • WordPress使用(1)
  • 基于 NodeJs 一个后端接口的创建过程及其规范 -- 【elpis全栈项目】
  • 上位机知识篇---GitGitHub
  • 38【2进制与ascall码】
  • 今日头条公域流量引流新径:开源 AI 智能名片 2 + 1 链动模式 S2B2C 商城小程序融合之道
  • 【C++语言】卡码网语言基础课系列----2. A+B问题II
  • 【漫话机器学习系列】072.异常处理(Handling Outliers)
  • 算法题(53):对称二叉树
  • 基于PLC的变频调速系统设计
  • 鸿蒙HarmonyOS实战-ArkUI动画(页面转场动画)_鸿蒙arkui tab 切换动画
  • K8S学习笔记
  • PDF 擦除工具
  • 【Leetcode 热题 100】62. 不同路径
  • “LoRA技术中参数初始化策略:为何A参数采用正态分布而B参数初始化为0”
  • 解锁维特比算法:探寻复杂系统的最优解密码
  • 青少年编程与数学 02-008 Pyhon语言编程基础 04课题、开始编程
  • 【图床配置】PicGO+Gitee方案
  • 17.2 图形绘制3
  • Spring Web MVC基础第一篇
  • qsort应用
  • Manticore Search,新一代搜索引擎之王
  • 算法【分组背包】
  • 鸿蒙开发在onPageShow中数据加载不完整的问题分析与解决