python学习之路(六)

一个被高等数学折磨的不成人样的男大,来整会python换换脑子,顺便做点笔记。

我们上一个博客在输出列表是遇见过这样的问题

我们图省事,用了一个自认为简单的算法来输出一个二位的数组,但是在改变其中某项的数值时,遇到了上述问题。而使用列表推导式就可以轻松的解决上述问题。

列表推导式的基本形式是

表达式 for 变量 in 可迭代对象 if 条件

我们可以使用列表推导式对列表进行多种操作

一,将列表中的元素翻倍

传统的解决办法是通过for循环将列表中的每个元素乘以2,然后赋值给一个新的列表。

而通过使用列表推导式,我们只需要一行代码就可以解决问题。

我们看到这个列表推导式里面是可以加入if语句的,所以我们也可以用它来解决一些筛选列表中元素的问题。

这里复习一下之前学过的一个小点:new_lst.append(x),这串代码的作用是将元素添加到new_lst这个列表的后面。

在列表推导式中,作用的元素可以不止一个。

就像上面的图片中所显示的一样,我们也可以通过列表推导式对 一个坐标进行生成与输出。

当然带上条件的也是可以的

这里还有一个执行顺序的问题,我们来看下面这张图片

通过对表达式进行修改与变换,我们可以知道它是先执行for循环,然后执行if判断,最后执行表达式的。

在列表推导式中我们也可以通过使用嵌套,来简化传统方法中有好几个for的情况。

这里我们需要注意到一个细节,就是在传统代码中在外层的for循环,在列表推导式中是靠前的,而在内层的for循环是靠后的。

tips:如果变量是无关紧要的,或者是一个临时的变量,那么他的变量名是可以用下划线代替的。

通过上面的学习我们发现,列表推导式其中的for循环是可以嵌套很多的,所以在平时编写时,我们要注意嵌套的多少从而降低代码的维护成本以及运行成本。

字符串的内容到此为止!!!!!!

相关推荐
V搜xhliang024617 小时前
AI智能体的数据安全与合规实践
人工智能·学习·数据分析·自动化·ai编程
无敌的牛17 小时前
redis学习过程
数据库·redis·学习
旅僧19 小时前
Π环境部署(运行 且 无理论讲解)
学习
jushi899919 小时前
Lucas Chess R国际象棋、中国象棋、日本将棋、五子棋训练学习工具游戏软件
学习
自传.20 小时前
尚硅谷 Vibe Coding|第一章 AI 编程基础理论 学习笔记
笔记·学习·尚硅谷·vibe coding
吃好睡好便好21 小时前
改变时间轴的跨度
学习·生活
fox_lht21 小时前
15.3.改进我们之前的输入、输出项目
开发语言·后端·学习·rust
chase。21 小时前
【学习笔记】SimpleVLA-RL:通过强化学习扩展 VLA 训练
笔记·学习
C语言小火车21 小时前
什么时候用智能指针?什么时候用裸指针?
c语言·c++·学习·指针
AOwhisky1 天前
Redis 学习笔记(第一期):概述、安装配置与核心理论
运维·数据库·redis·笔记·学习·云计算