当前位置: 首页 > 后端技术 > Python

Python中的推导之一——列表推导

时间:2023-03-25 21:19:52 Python

所谓推导,就是用Python编写Python代码的一种比较程式化的方式。什么是风格?如果有一个需求,可能需要三行、五行甚至更多行代码才能完成,但是如果同一个需求写一个推导,很可能一行代码就可以完成,所以功能推导是为了简化代码。.Python中只有三种推导式,即列表推导式、字典推导式和集合推导式。列表理解也称为列表构建。功能:简化代码,使用表达式创建正则列表或控制正则列表。1.经验列表推导要求:创建一个0-10的列表,比如0,1,2,3,4....1.1while循环创建一个正则列表代码经验:#1.准备一个空列表list1=[]#while循环实现#2.写一个循环,每次i=0whilei<10时向空列表list1追加数字:list1.append(i)i+=1print(list1)#[0,1,2,3,4,5,6,7,8,9]1.2for循环创建正则list代码经验:#1.准备一个空列表list1=[]#for循环实现#2.编写一个循环,在时间i=0时向空列表list1添加数字foriinrange(10):list1.append(i)print(list1)#[0,1,2,3,4,5,6,7,8,9]1.3列表推导创建常规列表代码体验:list1=[iforiinrange(10)]print(list1)#[0,1,2,3,4,5,6,7,8,9]listcomprehension写在一个list的[]方括号里,它的读写从for循环开始,for循环写成for循环左边是返回值,所以数据0-9都放在list里,最后打印出来的是[0,1,2,3,4,5,6,7,8,9]2.列表综合nsion要求withif:创建0-10的偶数列表2.1方法一:range()步长实现代码经验:list1=[iforiinrange(0,10,2)]print(list1)#[0,2,4,6,8]2.2方法二:for循环加if实现代码体验:list2=[]foriinrange(10):ifi%2==0:list2.append(i)print(list2)#[0,2,4,6,8]2.3方法三:将方法二重写为列表推导式代码体验if:list3=[iforiinrange(10)ifi%2==0]print(list3)#[0,2,4,6,8]三、多个for循环实现list推导需求:创建list如下:[(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)]3.1for循环嵌套实现代码体会:#Data1is1and2---"range(1,3)#Data2is012---"range(3)list1=[]foriinrange(1,3):forjinrange(3):#将元组追加到列表中,在循环之前准备一个空的猎豹,然后将元组数据追加到这个空列表中list1.append((i,j))print(list1)#[(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)]3.2实现列表理解代码经验的倍数:list2=[(i,j)foriinrange(1,3)forjinrange(3)]print(list2)#[(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)]其实多for列表推导式相当于for循环嵌套文章参考来源:Python自学网www.wakey.com.cn/