Python简写操作(for、if简写、匿名函数)

news/2024/11/17 19:23:07/

Python简写操作(for、if简写、匿名函数)

  • 1. `for` 简写
    • 1.1 一层 `for` 循环
    • 1.2 两层 `for` 循环
  • 2. `if` 简写
  • 3. `for` 与 `if` 的结合简写
  • 4. 匿名函数 `lambda`

1. for 简写

举个例子:

y = [1, 2, 3, 4, 5, 6]
result = [(i * 2) for i in y]
print(result)# Output:[2, 4, 6, 8, 10, 12]

1.1 一层 for 循环

语法(注意有中括号 []

[对i的操作 for i in 列表]

它相当于:

for i in 列表:对i的操作

1.2 两层 for 循环

语法(注意有中括号 []

[对i的操作 for 单个元素 in 列表 for i in 单个元素]

举个例子:

y_list = ['assss', 'dvv']
[print(i, end=' ') for y in y_list for i in y]  # Output:a s s s s d v v

它类似于:

y_list = ['assss', 'dvv']
for y in y_list:for i in y:print(i, end=' ') # Output:a s s s s d v v

2. if 简写

语法:

True的逻辑 if 条件 else False的逻辑

举个例子:

y = 0
x = y + 3 if y > 3 else y - 1
print(x)  # Output:-1

此时 x = -1

因为 y = 0 ,所以判断 y>3 时执行了 False的逻辑:y-1,所以 x 的值为 -1

3. forif 的结合简写

语法:

[判断为True的i的操作 for i in 列表 if i的判断]

举个例子:

x = [1, 2, 3, 4, 5, 6, 7]
[print(i, end=' ') for i in x if i > 3]  # Output:4 5 6 7

注:
使用简写的方式无法对 if 判断为 False 的对象执行操作。

4. 匿名函数 lambda

匿名函数的使用方法是:

lambda 参数: 表达式

举个例子:

x = 3
print((lambda k: k + 3)(x))  # Output:6

这是一个比较简单的匿名函数表达式,一般匿名函数会结合很多其他函数,作为 传递参数 的作用。

比如:

map() 配合匿名函数

map(函数名,列表) 这相当于对列表中的每个元素执行这个函数的操作。

举个例子:

result = list(map(lambda x: x * 2, [1, 2, 3, 4, 5]))
print(result)  # Output:[2, 4, 6, 8, 10]

http://www.ppmy.cn/news/31524.html

相关文章

JavaScript 中的全部对象

宿主对象(host Objects):由 JavaScript 宿主环境提供的对象,它们的行为完全由宿主环境决定。 【 浏览器环境宿主,全局对象window,window 上又有很多属性,如 document。 全局对象 window 上的属…

【服务器管理】Wordpress服务器内存占用太高(优化方案详解)

简述 在刚刚配置完服务器之后,想着试一试wordpress这个功能,结果打开服务器后台,发现本来就不多的内存被占用了一大半。 我真的服了,我还啥都没干呢,就这么多的内存占用,那之后我开始弄了还得了。因此有必…

Vue2组件之间的传值通信

父子组件Vue中常见的是父与子组件间的通信&#xff0c;所要用到的关键字段是props和$emit。props接受父组件传给子组件信息的字段&#xff0c;它的类型&#xff1a;Array<string> | Object;详细解释可以参考https://cn.vuejs.org/v2/api/#props$emit由子组件触发事件向上…

表格检测识别技术的发展历程

近年来&#xff0c;随着计算机技术的飞速发展&#xff0c;越来越多的研究者开始关注表格检测识别技术。表格检测识别技术是一种利用计算机自动处理表格的技术&#xff0c;它可以实现从文本中检测出表格&#xff0c;并进行识别和提取。这种技术有助于提高文本处理的效率&#xf…

C语言offsetof(TYPE, MEMBER)全解

offsetof(TYPE, MEMBER) 是一个宏定义&#xff0c;用于计算一个结构体中某个成员的偏移量。 其第一个参数 TYPE 是一个结构体类型&#xff0c;第二个参数 MEMBER 是 TYPE 中的一个成员变量名。 它将返回类型为 size_t 的整数&#xff0c;表示 MEMBER 相对于 TYPE 起始地址的偏…

Java | HashSet 语法

HashSet 基于 HashMap 来实现的&#xff0c;是一个不允许有重复元素的集合。 HashSet 允许有 null 值。 HashSet 是无序的&#xff0c;即不会记录插入的顺序。 HashSet 不是线程安全的&#xff0c; 如果多个线程尝试同时修改 HashSet&#xff0c;则最终结果是不确定的。 您必须…

MySQL连接IDEA详细教程

使用IDEA的时候&#xff0c;需要连接Database&#xff0c;连接时遇到了一些小问题&#xff0c;下面记录一下操作流程以及遇到的问题的解决方法。 目录 MySQL连接IDEA详细教程 MySQL连接IDEA详细教程 打开idea&#xff0c;点击右侧的 Database 或者 选择 View --> Tool Wind…

以java编写员工管理系统(测试过 无问题)

一、系统结果的部分展示 二、题目以及相关要求 三、组成 1.该系统由 Employee 类 、commonEmployee类、Testemd类和managerEmployee类组成 2.Employee实现的代码 public class Employee {private String id;private String name;private String job;private int holiday…