Python数据类型_列表

列表(list)是一种有序的集合,可以随时添加、查找和删除元素。列表支持加入不同数据类型的元素:数字、字符串、列表、元组等。

 

一、创建列表

1、用中括号[]表示,元素间使用逗号分隔。

list_a = [1, 2, 3]            list_b=[]     (空列表)

2、用list()方法,转化生成列表。

list_b = list("abc")            # list_b == ['a', 'b', 'c']    

list_c = list((4, 5, 6))         # list_c == [4, 5, 6]

3、列表生成式/列表解析式/列表推导式,生成列表。

list_d = [i for i in list_a]

list_h = list(range(3))

 

二、列表添加

stus.append('XX')                      #在列表的末尾增加一个元素

stus.insert(0,'XX')                      #在指定位置添加一个元素

stus.extend(['kk','cici'])             #在列表的末尾添加一个列表

 

三、列表删除

stus.pop(2)                                #删除指定位置的元素,取出该位置的元素值

stus.remove('XX')                     #删除指定的元素

del stus[3]                                 #删除指定位置的元素

stus.clear()                                #清空整个list

 

四、列表修改 

stus[1]='老王'          #修改

 

五、列表元素查找

1、按照元素下标查找:

print(stus[-1])                    #取值 下标为-1的时候,就取最后一个元素

2、切片:【切片特点:顾头不顾尾】   

stus[1:3]                           #取list下标为1至2的元素

stus[:3]                             #如果开始的元素下标不写,则从第一个下标开始取

stus[1:]                             #如果后面下标不写的话,则从开始下标取元素至最后

stus[:]                               #取整个list的元素

stus[0:11:2]                      #2代表步长,意味着每隔2各元素取一次

stus[::-1]                          #步长是负数时,意味着从右往左开始取元素       (步长为负数时,下标取值顺序为从右往左)

 

六、列表函数&方法

stus.count('老王')                      #统计这个元素在list里面出现了几次

stus.index('老王')                      #返回这个元素第一次出现的下标,如果这个元素在list里面不存在的话,会报错

stus.reverse()                            #反转

stus.extend(stus2)                    #把后面list里面的值,加入到第一个list里面

stu3 = stus+stus2                    #合并两个list

nums.sort(reverse=True)         #排序,默认是升序    reverse排序规则,reverse = True 降序, reverse = False 升序

len(my)                                    #查看变量中元素的个数,长度

 注意:

当列表使用了上述方法并赋值给某个变量时,输出的是None。 要对列表使用上述的方法,无需进行变量赋值操作,因为使用函数后,无返回值

 判断元素是否在列表中?      in:存在           not  in:不存在

 

七、列表循环

循环列表中的元素遍历访问:

for stu in stus:

  print(stu)

循环列表的下标遍历访问:

for stu in len(stus):

  print(stus[stu])

 

注:如果在遍历列表时,需要对列表中元素进行修改/删除操作,此时不应对循环的列表进行修改/删除操作,会漏掉部分元素

       可通过复制一个列表,循环新列表,再对原列表进行修改/删除操作

eg:去除列表中的奇数,list = [1,1,2,3,4,5,6,7]

for i in list:
if i%2!=0:
list.remove(i)
print(list) ---------->1,2,4,6

为什么还有1呢?
第一次循环:list=[1,2,3,4,5,6,7]

第二次循环:list[1]的值变为了2,跳过了1,所以print中有1

不可以在for循环中修改列表

posted on 2019-04-25 16:59  DAMAER  阅读(256)  评论(0编辑  收藏  举报

导航