python list 元素去掉换行字段 python list去掉空元素_python3 float最大值


在开始之前我们先了解一下序列(sequence):

序列中的元素都是有序的,其实在前面“极客干货”已经分享过一种序列了,那就是字符串《Python3 自学第4天:字符串》

Python总共有6个内置的序列,即列表、元组、字符串、Unicode字符串、buffer对象和 xrange 对象。

序列的操作包括:索引、长度、切片、遍历、组合(序列相加)、检查成员、重复(乘法)、最小值和最大值。

今天我们了解下数据类型中的列表list,是Python中最常用的序列之一。

使用方括号[ ]来创建列表,元素item间用逗号(,)隔开;实例代码:


python list 元素去掉换行字段 python list去掉空元素_jdk8 list 反转_02


从上面的实例我们可以看出,list中的元素item可以是不同类型的对象;还可以看出上面的list在定义时字符串元素item使用了单/双引号,输出结果时Python解释器默认用单引号表示字符串元素,我们自己在定义字符串元素时可以借鉴一下。

list 索引和切片:

列表的索引和切片与前面讲的字符串索引是相同的, [头下标:尾下标) list切片遵循“左闭右开”原则,也叫“包左不包右”。实例代码:


python list 元素去掉换行字段 python list去掉空元素_jdk8 list 反转_03


合理的使用负索引进行访问和切片,可以提高检索list的效率。对正负索引和切片的概念不清楚的地方,可以了解下《Python中字符串截取(切片)的两种方式》。

列表拼接,拼接后会产生一个新列表。实例代码:


python list 元素去掉换行字段 python list去掉空元素_uni-app list 2列_04


注意: += 操作符是把b列表中每个元素拼接到了a列表元素的后面。

使用list.append()追加元素,和+=操作符是有区别的,实例代码:


python list 元素去掉换行字段 python list去掉空元素_uni-app list 2列_05


可以看出,append(obj) 参数整体作为一个元素被追回到b列表最后一位,这就是下面要讲的嵌套。

list 嵌套

在前面刚才提到了list中的元素可以是不同的数据类型对象;实例代码:


python list 元素去掉换行字段 python list去掉空元素_jdk8 list 反转_06


说明:

list_a[-1]:取出a列表最后一位元素,它是list类型;

list_a[-1][-1]:取出a列表最后一个元素中的最后一个元素。

Python内置函数


python list 元素去掉换行字段 python list去掉空元素_uni-app list 2列_07


用 in 判断是否存在于列表中


python list 元素去掉换行字段 python list去掉空元素_jdk8 list 反转_08


列表推导式:这个很重要也比较常用,格式如下:

[表达式 for 变量 in 可迭代对象]或[表达式 for 变量 in 可迭代对象 if 条件]


python list 元素去掉换行字段 python list去掉空元素_python3 float最大值_09


list 常用的几个方法


python list 元素去掉换行字段 python list去掉空元素_jdk8 list 反转_10


python list 元素去掉换行字段 python list去掉空元素_python3 float最大值_11


python list 元素去掉换行字段 python list去掉空元素_jdk8 list 反转_12


注意了,上面list.sort()只针对元素类型相同的列表进行排序,不同类型元素的列表进行排序是会报错的;实例代码:


python list 元素去掉换行字段 python list去掉空元素_uni-app list 2列_13


总结一下sort与sorted区别:

sort是list自身的方法;sorted是Python内置函数,可以对所有可迭代的对象进行排序操作。

list的sort方法改变的是原列表中元素的顺序,而内置函数sorted返回的是一个新的list,原列表保持不变。


python list 元素去掉换行字段 python list去掉空元素_jdk8 list 反转_14


总结一下上面的列表复制:

id() 获取对象的内存地址,这样 = 和 copy()两者的区别就明显了;

使用=是引用赋值,两个对象指向同一块内存地址,变更其中一个另外一个也会跟着变;

copy()是复制一个副本,原对象和新复制的对象互不影响。


python list 元素去掉换行字段 python list去掉空元素_RESTapi list参数_15


del语句删除一个或者多个对象的引用(引用可以理解为给对象贴的标签),而不是删除内存中的对象(value);

当某个对象的所有引用都被删除后(对象的所有标签被撕完后),会自动执行魔法方法__del__将这个对象作为垃圾回收掉。实例代码:


python list 元素去掉换行字段 python list去掉空元素_uni-app list 2列_16


OK!Python数据类型里的列表list就分享到这里,如果您有什么问题,请在评论区留言,我会及时回复,感谢!