栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

自学Python的第六天了,暑假了学的有点懒散

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

自学Python的第六天了,暑假了学的有点懒散

目录:

        1.推导式

        2.生成器推导式

        3.lambda表达式

        4.内置函数


推导式(列表推导式、字典推导式、集合推导式、生成器推导式):

列表推导式:[结果 for循环 if判断]

示例:

#获取10之内的奇数

list = [i for i in range(10) if i % 2 == 1]

结果:[1,3,5,7,9]

字典推导式:{key: value for循环 if判断}

示例:

#以0:xxx的格式打印

list = ["小明", "小红", "小强"]

dic = {i: list[i] for i in range(len(list)) if i % 2 == 0}

结果:{0:"小明", 2:"小强"}

集合推导式:(key for循环 if判断)

示例:

list = ["阿巴1", "阿巴2", "阿巴3"]

s = {i for i in list}

结果:{'阿巴1', '阿巴2', '阿巴3'}

元组推导式:

示例:

list = ("小红", "小明", "小强")

t = (i for i in list) 

结果:Python中没有元组推导式,()返回的是生成器表达式

复习生成器:

1.通过生成器函数:yield
2.通过生成器表达式来实现生成器  (推导式)

1.节省内存
2.惰性机制
3.不能反复,只能向下执行

想要拿空生成器表达式里面的值。可以使用 list, tuple, set

list = (1,2,3,4)

list(list)

tuple(list)

set(list)

"""
yield from 把一个可迭代对象中的每一项分别返回
"""
def func():
    lst1 = ["y1", "s1", "d1"]
    lst2 = ["y2", "s2", "d2"]
    # for i in lst1:
    #     yield i
    # for i in lst2:
    #     yield i
    yield from lst1
    yield from lst2

lambda表达式:

"""
    
    匿名函数又被称为lambda表达式。是为了解决一些简单的需求而设计的一句话函数
    语法: fn = lambda n: n ** 2
    注意: 返回多个值必须用元组
    
"""
#计算a+b,a-b的结果

fn = lambda a, b: (a + b, a - b)    #返回多个值必须用到元组
print(fn(10, 20))

内置函数(作用域相关、迭代器/生成器相关、其他):

"""
作用域相关(2):
globals()    查看全局作用域所有内容
locals()     查看当前作用域中的内容
"""

"""
迭代器、生成器(3):
range()     计数
next()      获取迭代器的下一个值
iter()      获取迭代器
"""

"""
其他(12):
dir()       查看数据类型都有哪些功能
callable()  判断XXX是否可以被调用
help()      帮助相关
__import__()    动态导入模块
open()      文件操作
hash()      查看hash值
id()        查看内存地址
input()     输入
print()     输出
eval()      执行字符串类型的代码,并返回最终结果
exec()      执行字符串类型的代码
complie()   将一个字符串编译为字节代码。
complie(字符串代码, 文件 , 执行的模式)
模式:
1.exec      执行代码
2.eval      执行代码需要返回的时候用
3.single    有input的时候用
"""
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/947704.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号