首页 > 编程语言 >一篇文章掌握Python中多种表达式的使用:算术表达式、字符串表达式、列表推导式、字典推导式、_集合推导式、_生成器表达式、逻辑表达式、函数调用表达式

一篇文章掌握Python中多种表达式的使用:算术表达式、字符串表达式、列表推导式、字典推导式、_集合推导式、_生成器表达式、逻辑表达式、函数调用表达式

时间:2024-05-09 12:33:34浏览次数:26  
标签:name 推导 Python 生成器 列表 表达式

Python 中的表达式可以包含各种元素,如变量、常量、运算符、函数调用等。以下是 Python 表达式的一些分类及其详细例子:

1. 算术表达式

算术表达式涉及基本的数学运算,如加、减、乘、除等。

# 加法表达式
sum = 3 + 5  # 结果为 8

# 乘法表达式
product = 4 * 6  # 结果为 24

# 复合算术表达式
result = (5 + 2) * 3 - 4  # 结果为 17

2. 字符串表达式

字符串表达式涉及字符串的连接、格式化等。

# 字符串连接
greeting = "Hello, " + "World!"  # 结果为 "Hello, World!"

# 使用 f-string 格式化字符串(Python 3.6+)
name = "Alice"
age = 30
formatted_string = f"My name is {name} and I'm {age} years old."  # 结果为 "My name is Alice and I'm 30 years old."

3. 列表推导式(List Comprehensions)

列表推导式是创建列表的一种简洁方式。

# 创建一个包含 0 到 9 的平方的列表
squares = [x**2 for x in range(10)]  # 结果为 [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

# 创建一个包含列表中所有偶数平方的列表
even_squares = [x**2 for x in range(10) if x % 2 == 0]  # 结果为 [0, 4, 16, 36, 64]

这篇文章更为详细的解释了何为列表推导式:Python列表推导式(List Comprehensions)

4. 字典推导式(Dictionary Comprehensions)

字典推导式用于创建字典。

# 创建一个字典,其中键是 1 到 5 的整数,值是它们的平方
squares_dict = {x: x**2 for x in range(1, 6)}  # 结果为 {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

5. 集合推导式(Set Comprehensions)

集合推导式用于创建集合。

# 创建一个集合,其中包含列表中所有唯一的偶数
even_numbers = {x for x in range(10) if x % 2 == 0}  # 结果为 {0, 2, 4, 6, 8}

6. 生成器表达式(Generator Expressions)

生成器表达式与列表推导式类似,但返回的是一个生成器对象,用于迭代。

# 创建一个生成器,用于迭代 0 到 9 的平方
squares_gen = (x**2 for x in range(10))  # 这是一个生成器对象,你可以通过迭代来访问其元素

# 迭代生成器并打印结果
for square in squares_gen:
    print(square)  # 依次打印 0, 1, 4, 9, ...

7. 逻辑表达式

逻辑表达式涉及布尔值和逻辑运算符。

# 逻辑与(and)表达式
is_adult = age >= 18
is_qualified = has_degree and is_adult

# 逻辑或(or)表达式
has_experience = years_of_experience > 0 or is_qualified

# 逻辑非(not)表达式
is_not_qualified = not is_qualified

8. 函数调用表达式

函数调用表达式涉及调用函数并传递参数。

# 定义一个函数
def greet(name):
    return f"Hello, {name}!"

# 调用函数并存储返回值
greeting = greet("Bob")  # 结果为 "Hello, Bob!"

这些例子涵盖了 Python 中表达式的主要类型。表达式是编程中的基本构造,它们允许我们执行各种计算和操作。

标签:name,推导,Python,生成器,列表,表达式
From: https://www.cnblogs.com/ai-xue-xi/p/18181872

相关文章

  • Python中级之异常处理+推导式
    【一】异常处理【一】什么是异常异常是程序运行时可能发生的错误或意外情况当出现异常时,程序的正常流程会被中断,出现报错界面【二】异常分类在Python中异常分为内建异常和用户自定义异常【1】BaseException(所有异常的基类)SystemExit:解释器请求退出KeyboardInterru......
  • cpp的lambda表达式
    在C++中,lambda表达式提供了一种方便的方式来定义匿名函数。Lambda可以用来创建简单的函数对象,常用于算法库中的函数参数,特别是在STL(StandardTemplateLibrary)中。Lambda表达式的语法是这样的:[capture](parameters)->return-type{function-body}其中:capture:捕......
  • 使用.NET源生成器(SG)实现一个自动注入的生成器
    DI依赖注入对我们后端程序员来说肯定是基础中的基础了,我们经常会使用下面的代码注入相关的serviceservices.AddScoped<Biwen.AutoClassGen.TestConsole.Services.TestService2>();services.AddTransient<Biwen.AutoClassGen.TestConsole.Services.TestService2>();services.Ad......
  • H264/AVC-帧内预测相邻像素推导过程
    帧内预测过程会以相邻块的像素值做参考,来预测当前块的像素值。以Intra_4x4为例,如下图所示,需要用到的13个相邻像素值,那么如何获取这13个像素值?本文要主要说明如何获取帧内预测所用到的相邻像素。获取相邻像素的流程如下:找到当前块(可以为4x4、8x8、16x16大小)的左、上、......
  • 正则表达式 RegEx
    0x01概述正则表达式(RegEx)可以精确描述需要匹配的字符组合,提高文本处理效率相关工具:正则表达式在线测试网站:https://regexr.com/VSCode插件:RegexPreviewerPython的re模块:importre0x02基本语法(1)字符匹配正则表达式一般用两个/包裹起来,在后面跟上修饰符......
  • Cron表达式
    原文链接:https://blog.csdn.net/troubleshooter/article/details/119389179Cron表达式是一个字符串,以5个或6个空格隔开,分为6个或7个域,每一个域代表一个含义,Cron有如下两种语法格式:1.SecondsMinutesHoursDayofMonthMonthDayofWeekYear2.SecondsMinutesHoursDayofMonthMon......
  • JavaScript正则表达式
    JavaScript正则表达式创建正则表达式使用构造函数var变量=newRegExp("正则表达式");//注意,参数是字符串var变量=newRegExp("正则表达式","匹配模式");//注意,两个参数都是字符串RegExp的意思是Regularexpression。使用typeof检查正则对象,会返回object。......
  • 精通-Python-正则表达式(全)
    精通Python正则表达式(全)原文:zh.annas-archive.org/md5/3C085EA0447FEC36F167335BDBD4428E译者:飞龙协议:CCBY-NC-SA4.0前言自计算机科学迈出第一步以来,文本处理一直是最重要的话题之一。经过几十年的研究,我们现在拥有了最多才多艺和无处不在的工具之一:正则表达式。验证、......
  • 代码随想录算法训练营第11天 | 栈与队列 20.有效的括号 1047.删除字符串中的所有相邻
    leetcode20.有效的括号题目20.有效的括号给定一个只包括'(',')','{','}','[',']'的字符串s,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。解题思路实现代码leetcod......
  • 统一场理论公式推导和笔记——part6
    三十九,统一场论能量方程1,能量的定义:能量是质点在空间中【或者质点周围空间本身】相对于我们观察者在某个空间范围内【由于时空同一化,也可以说在某一个时间段内】运动的运动量。能量和动量的定义是类似的,反映质点和空间相对于我们观察者的运动程度,所不同的是,动量是矢量,能量是标......