1、三元表达式

  • 定义格式:true_return if condition else false_return
  • if 后条件成立返回,true_return,不成立返回false_return
  • 当功能需求仅仅是二选一的情况下,推荐使用三元表达式

实例如下:

res = '坚持学习python' if 3>1 else '不学了!'
print(res)
# 结果
# 坚持学习python '''
三元表达式:
将符合条件的值返回,用一个变量接收
条件成立返回true_return
条件不成立返回false_return
'''

2、列表生成式

  • 定义:

    • 列表生成式提供了一种简明扼要的方法来创建列表。它的结构是在一个中括号里包含一个表达式,然后是一个for语句,然后是 0 个或多个 for 或者 if 语句。表达式可以是任意的,意思是你可以在列表中放入任意类型的对象。返回结果将是一个新的列表。
  • 格式:

    • [表达式 for 变量 in 列表 if 条件]

    实例1如下:

    l = [1,2,3,4,5]
    # for循环实现
    l1 = []
    for i in l:
    l1.append(i)
    print(l1) # 列表生成成式实现
    res = [x for x in l]
    print(res) #结果
    [1, 2, 3, 4, 5]
    [1, 2, 3, 4, 5]
    • 列表运行图示:


实例2如下:

# 输出100以内的偶数
# for循环解决
get_num = []
for i in range(0,100,2):
get_num.append(i)
print(get_num) # 列表生成式
get_num_lst = [x for x in range(100) if x%2 ==0]
print(get_num_lst)

3、字典生成式

  • 定义:同列表生成式一样,字典生成式是用来快速生成字典的。
  • 格式:{字典内容+循环条件+ i f 判断条件(产生条件)}

实例如下:

# for循环做法
lst_info_g = ['name','age','number']
lst_info_v = ['HammerZe',18,'199****1234']
lst_info_dict = {}
for i in range(len(lst_info_g)):
# 让lst_info_g里的元素和lst_info_v里的元素一一对应
lst_info_dict[lst_info_g[i]] = lst_info_v[i]
print(lst_info_dict)
# 结果
{'name': 'HammerZe', 'age': 18, 'number': '199****1234'} #字典生成式
lst_info = [('name','HammerZe'),('age',18),('number','199****1234')]
dict_info = {k:v for k,v in lst_info}
print(dict_info)
# 结果
{'name': 'HammerZe', 'age': 18, 'number': '199****1234'}

有 i f的字典生成式:

实例如下:

lst_info = ['HammerZe','jason','tony','tom']
# 用枚举的方法,获取字典的k,当获取元素为HammerZe时,不打印输出剩下的元素
dict_info = {k:v for k,v in enumerate(lst_info) if v!='HammerZe' }
print(dict_info)
# 结果
{1: 'jason', 2: 'tony', 3: 'tom'} ''' enumerate()枚举方法
该方法针对for循环使用,每次会产生两个结果,默认从0开始,可以通过start修改起始位置,从几开始!
'''

持续更新中···

python -三元表达式、列表生成式、字典生成式的更多相关文章

  1. python 三元表达式 列表推导式,生成器表达式。递归,匿名函数, 内置函数

    三元表达式 三元表达式仅应用于: 1.条件成立返回一个值 2.条件不成立返回一个值 res = x if x>y else y print(res) name= input("姓名&g ...

  2. Python 函数递归-三元表达式-列表生成式-字典生成式-匿名函数-内置函数

    上节课复习: 1. 无参装饰器 def 装饰器名字(func): def wrapper(*args,**kwargs): res = func(*args,**kwargs) return res ...

  3. Python 列表生成式 & 字典生成式

    Python 列表生成式 & 字典生成式 通过生成式可以更加简洁地生成列表和字典 列表生成式 对比 直接生成数据后加入列表示例: user_list = list() for i in ran ...

  4. python字符串、列表和字典的说明

    python字符串.列表和字典的说明 字符串.列表.字典 字符串的作用存储一段数据信息.例如 info = '我爱北京天安门' ,在调取的时候可以直接调取,灵活方便,print(info) 就可以把刚 ...

  5. python 三元表达式

    python 三元表达式(ternary expression)  把 if-else块 写到一行或者一个表达式中 并且产生一个值 value = true if condition else fal ...

  6. python递归-三元表达式-列表生成式-字典生成式-匿名函数-部分内置函数-04

    递归 递归: # 函数在调用阶段直接或间接地又调用了自身 应用场景: # 将列表中的数字依次打印出来(循环的层数是你必须要考虑的点)   -->  l = [1, [2, [3, [4, [5, ...

  7. Python三元表达式,列表推导式,字典生成式

    目录 1. 三元表达式 2. 列表推导式 3. 字典生成式 3.1 字典生成式 3.2 zip()方法 1. 三元表达式 """ 条件成立时的返回值 if 条件 else ...

  8. Python三元表达式和列表生成式

    三元表达式 取代 if …… else……的简单表达方式 # 常规写法 x = 1 y = 2 ​ if x>y: print(x) else: print(y) ​ #三元表达式写法 res ...

  9. day19-1 迭代器,三元表达式,列表推导式,字典生成式,

    目录 迭代器 可迭代对象 迭代器对象 总结 三元表达式(三目表达式) 列表推导式 字典生成式 迭代器 可迭代对象 拥有iter方法的对象就是可迭代对象 # 以下都是可迭代的对象 st = '123'. ...

随机推荐

  1. 从零入门 Serverless | 架构的演进

    作者 | 许晓斌 阿里云高级技术专家 本文整理自<Serverless 技术公开课>,关注"Serverless"公众号,回复 入门 ,即可获取 Serverless ...

  2. Initialize this repository with a README

    在gitHub创建项目时,有很多小伙伴不太清楚 Initialize this repository with a README 在什么情况下需要勾选,在这里简单说明 如下: 1. 翻译 如果要导入现 ...

  3. Geocoding Tools(地理编码工具)

    地理编码工具 # Process: 创建地址定位器 arcpy.CreateAddressLocator_geocoding("", "", "&qu ...

  4. 电脑日常使用bug记录

    1.由于电脑太卡了,于是决定关一点服务,一不小心,电脑无线无法使用了.启动无线服务时提示"windows无法启动wlan autoconfig服务错误1068依赖服务" 启动 Ex ...

  5. Egg.js学习与实战系列 · 文件上传配置

    在使用Egg.js搭建文件上传服务时,遇到了几个一般新手都会遇到的坑. 经查阅官方文档,Egg框架中默认使用egg-multipart插件进行文件上传,所以上传文件前需要做相关的配置. 上传文件提示: ...

  6. Linux中检查字符串是否为合法IP地址的shell脚本

    #!/bin/bash #判断IP地址是否为有效IP CHKECK_IP () { CHECK_STEP1=`echo $1 | awk -F"." '{print NF}'` i ...

  7. 阿里Nacos部署

    Nacos的部署 一.单机部署 **4.修改 Nacos 存储为 Mysql** 二.集群部署 1.机器部署列表 2.修改 `nacos/conf/application.properties`中的端 ...

  8. STM32必学的时钟系统

    STM32的时钟系统 相较于51单片机,stm32的时钟系统可以说是非常复杂了,我们现在看下面的一张图:   上图说明了时钟的走向,是从左至右的从时钟源一步步的分配给外设时钟.需要注意的是,上图左侧一 ...

  9. Python报错ModuleNotFoundError: No module named 'numpy'

    转载:https://blog.csdn.net/qq_39779233/article/details/103224712 Python报错ModuleNotFoundError: No modul ...

  10. 像素反转 牛客网 程序员面试金典 C++ Python

    像素反转 牛客网 程序员面试金典 题目描述 有一副由NxN矩阵表示的图像,这里每个像素用一个int表示,请编写一个算法,在不占用额外内存空间的情况下(即不使用缓存矩阵),将图像顺时针旋转90度. 给定 ...