python数据存储之列表:一些注意的地方

1.常用列表的列表推导式

a = [i for i in range(n)]  # 会生成关于i的一个列表,其中可以对i进行判断筛选,或者进行其他操作

在列表数据清洗可以使用列表推导式,例如简单的一个列表元素数据的清洗操作

a = [1,2,3,4]   # 对列表a中的数据进行操作

a = [ i**2 for i in a]  #  a = [1,4,9,16] 

2.列表的切割操作注意的一些方法

首先,列表是具有反向索引 从-1开始,

a = [1,2,3] a[-2] = 2 a[-1] = 3

在进行切割操作时,若只是获取列表部分中间的元素,可以使用反向索引,例如:

a = [1,2,3,4,....'a','b','c']  # 需求:截取首尾元素(这些数据不需要入库)

a[1:-1]  # 直接去除首尾元素

3.列表的反向切割:

会从开始索引往左进行切割.

a = [1,2,3,4]  # 进行反向切割

a[0::-1]  # [1] (从0索引往左切割,只有一个索引0元素为1)

a[2::-1]  # [3,2,1] (从索引2(值为3)往左切,以此满足条件的下标对应的元素值为 3,2,1)

a[-1::-1]  # [4,3,2,1] 反转列表,相当于reverse()方法[注意:reverse()返回值是反转后的a,而a[-1::-1]返回值是一个新列表,可以使用一个变量进行接收]

4.列表的合并
两个列表可以直接相加,进行合并

相加时哪个列表在前,那个列表的所有元素就在前

若是两个列表有重复元素,相加后需要保留一个即可:可以使用set()转为集合,然后在list()转为列表

set(),list()函数参数传入需要进行转化的数据,使用变量接收返回值

也可以使用双重遍历列表进行数据去重

5.列表的遍历,enumerate方法的使用
enumerate()方法,在遍历时使用,传入列表,遍历的结果是每个元组(索引,对应值)

for i in enumerate(list(range(1,5))):

  print(i)  # (0,1),(1,2)....

可以使用两个变量解包元组
for m,n in enumerate(list(range(1,5))):

5.列表的一些其他的方法

index()传入一个元素值,可以获得在列表中的索引值

pop()传入一个索引,删除列表中的元素,返回值是被删除的元素[可以对列表中的数据进行不可逆的取出操作]

remove()传入一个元素值,直接删除元素,返回值为None

 

posted @ 2018-12-12 00:33  纵天地者  阅读(4741)  评论(0编辑  收藏  举报