l1 = ['jason', 'tank', 'tony']
new_list = []
使用For循环方法:
for i in l1:
data = f'{i}牛逼'
new_list.append(data)
print(new_list)
列表生成式:
res = [f'{i}牛逼'for i in l1]
print(res) # ['jason牛逼', 'tank牛逼', 'tony牛逼']
复杂情况
res = [f'{i}牛逼'for i in l1 if i == 'tank']
print(res) # ['tank牛逼']
还具备筛选能力
res = ['鸣人'for i in l1 if i != 'jason'] # 此时后面的if时筛选功能print(res) # ['鸣人', '鸣人']
在加入一个三元表达式
res = ['鸣人'if i == 'jack'else'佐助'for i in l1 if i != 'tank']
print(res) # ['佐助', '佐助']
2.字典生成式
enumerate 当你在循环一个数据集的时候给你产生从0开始的数字,也可以修改起始号码 在后面+ start= 20
变量名接收 = {k:v for循环 k,v inenumerate目标数据集}
l1 = ['jason', 'tank', 'tony']
for i,j inenumerate(l1,): # i 接收序号, j接受数据值print(i,j)
0 jason
1 tank
2 tony
d1 = {i:j for i, j inenumerate(l1)} # i代表k:j代表v 来处理后面循环获取数据的i j print(d1)
{0: 'jason', 1: 'tank', 2: 'tony'}
3.元组生成式,集合生成式
元组其实没有生成式 ,产生的结果是生成器
l1 = ['jason', 'tank', 'tony']
res = (i+'sb'for i in l1)
print(res)
# <generator object <genexpr> at 0x0000027BDBEECB30>
用for循环来查看数据:
for k in res:
print(k)
jasonsb
tanksb
tonysb
集合生成式
res = {i for i in'hello'}
print(res)
匿名函数
没有函数名的函数,需要使用关键字 lambdalambda 就是用来顶替掉一些简单的函数 , 结合一些常见的内置函数一起用。
语法结构:
lambda 形参:返回值
普通函数方式:
deffunc(a,b):
return a+b
res = func(2, 3)
print(res) # 5lambda 方式:
res = lambda x, y: x * y
a = res(2, 3)
print(a) # 6
res = lambda x, y: x * y
print(res(2, 3)) # 6"""
def func(a, b) 是def的声明部分,return a+b 是实现部分
lambda x,y是声明部分,x * y是实现部分
"""
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)