Python中列表推导式,列表推导式python菜鸟教程
一.清单(可变序列)
1.公共列表对象方法
解释lst.append(x)将元素x添加到列表lst的末尾,extend(L)将列表L中的所有元素添加到列表lst的末尾,insert(index,x)将元素x添加到列表lst中的指定位置index,该位置后面的所有元素都向后移动一个位置lst,remove(x)删除列表lst中的第一个指定元素,该元素之后的所有元素都向前移动。
lst . pop([索引])
并删除返回列表lst中索引为(-1)的元素lst.clear()。删除列表lst中的所有元素,但保留返回列表lst中值为x的第一个元素的索引。如果没有值为x的元素,抛出异常lst.count(x)
返回列表lst中指定元素X出现次数。lst.reverse()反转liebiaolst的所有元素。lst。sort (key=none,reverse=false)对列表lst中的元素进行排序,key用于指定排序依据,reverse决定是升序(false)还是降序(True)lst.copy()返回列表lst。浅层copy 2、append()、insert()和extend()都可以向列表中添加元素。
Append()用于将一个元素追加到列表的末尾。
Insert()用于在列表中的任意指定位置插入一个元素。
Extend()用于将另一个列表中的所有元素追加到当前列表的末尾。
(1)原地操作,不影响内存中list对象的起始地址。
(2)在非就地操作的情况下,操作员和*
3、弹出()、移除()、清除()
这三种方法都是用来删除列表中的元素的,都是在不改变内存地址的情况下就地操作。
Pop()用于删除和返回指定位置的元素(默认情况下是最后一个)
Remove()用于删除列表中第一个值等于指定值的元素。
Clear()用于清空列表。
删除列表中指定位置的元素。
4、计数()、索引()、输入
Count()用于返回指定元素在列表中出现的次数。
Index()用于返回指定元素在列表中第一次出现的位置。如果它不存在,将引发异常。
In测试列表中是否存在某个元素。
5、排序()、反转()
(1)就地操作,即处理后的清单中原来的顺序全部丢失。
Sort()用于按照指定的规则对所有元素进行排序,默认规则是直接比较元素大小。
Reverse()用于以相反的顺序排列列表中的所有元素。
(2)sorted()和reversed()不改变原来的列表顺序,而是创建一个新表,改变内存地址。
6.列表内置函数的操作
Max()和min()用于返回列表中所有元素的最大值和最小值。
Sum()用于返回数字列表中所有元素的总和。
Len()用于返回列表中元素的个数。
Zip()用于将多个列表中的元素重组为元组,并返回包含这些元组的zip对象。
Enumerate()用于返回包含几个下标和值的迭代对象。
注意:在列表中添加或删除元素时,list对象会自动扩展或收缩内存,从而保证元素之间没有空隙。Python的这种内存自动管理功能可以大大减轻程序员的负担,但是删除和插入非尾部元素会涉及到列表中大量元素的移动,效率很低,而且会对一些操作造成意想不到的错误结果。所以,除非真的有必要,否则尽量从链表的末尾开始添加和删除元素,这样不仅可以大大提高链表的处理速度,还能始终保证结果的正确。
二、列表推导式
[表达式 for 变量 in 序列或迭代对象]
推导在逻辑上相当于一个循环,但在形式上更简洁。
1.使用列表派生来平铺嵌套列表。
2.过滤掉不合格的元素。
(1)列出当前文件夹中的所有Python源文件
(2)选择所有大于0的数字,形成新的表格。
(3)对字典中的等级进行各种操作
(4)找到列表中元素最大值的位置。
3.在列表派生中使用多个循环来实现多个序列元素的任意组合,并且可以通过组合条件语句来过滤特定元素。
4.利用列表求导实现矩阵转置(三种方式)
5.列表派生可以使用函数或复杂表达式。
6.列表派生支持文件对象迭代。
7.使用列表推导产生100以内的所有质数。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。