列表

一、列表定义

变量可以存储一个元素,而列表是一个“大容器”可以存储n多个元素,程序可以方便的对这些数据进行整体操作,相当于其他语言中的数组。

一字排开

列表中可以存储不同数据类型

二、列表的创建

(1)使用中括号[],元素之间用‘,’隔开

(2)使用内置函数list()

lst = ['you ',12,'me']
lst2 = list(['you','me',98])
print(lst,lst2)

三、列表的特点

(1)列表元素按顺序有序排放

(2)索引映射唯一元素

(3)列表可以存储重复数据

(4)存储任意数据类型可混存

(5)根据需要动态分配和回收内存

四、列表的查询操作

(1)获取列表中指定元素的索引,使用index()实现

    注意:查找失败(查找元素在列表中不存在)会报错

lst = ['you ',12,'me']
lst2 = list(['you','me',98])
print(lst.index('me'))

  还可以从指定位置查找

lst = ['you ',12,'me']
lst2 = list(['you','me',98])
print(lst.index('me',1,3))#从索引为1的位置开始查找,不包括3
结果:2

(2)获取列表中的单个元素

  正向索引从0到N-1,举例lst[0]

  逆向索引从-N到-1

  指定索引不存在,抛出异常

lst = ['you ',12,'me','you',98,'hello']
lst2 = list(['you','me',98])
print(lst[2])#正向索引
print(lst[-4])#获取索引为-3的元素
结果:
me
me

(3)获取列表中的多个元素

语法格式:

  列表名[start:stop:step]

    切片的结果:对原列表片段的拷贝(对内存id的切片理解)

    切片范围:start--stop,不包括stop

  可省略start默认从0开始,省略stop默认末尾结束---------歩长为正

  歩长为负,相反

(4)判断指定元素在列表中是否存在,in 与not in

   格式:

    元素  in 列表名

    元素  not  in 列表名

lst = ['you ',12,'me','you',98,'hello']
lst2 = list(['you','me',98])
print(12 in lst)
print(10 in lst)
print('you ' not in lst)
结果:

True
False
False

(5)列表元素的遍历

  格式 :

     for 迭代变量  in 列表名:

        循环体

五、列表元素的增加操作

  append()方法    在列表末尾添加一个元素

  extend()方法      在列表末尾至少添加一个元素

     insert()方法       在列表的任意位置添加一个元素

  切片                        在列表任意位置至少添加一个元素

 六、列表元素的删除操作

  remove()  一次移除一个元素

        重复元素只移除第一个元素

        元素不存在时抛出异常

   pop( )       删除一个指定位置上的元素

        指定位置不存在抛出异常

        不指定位置,删除列表中最后一个元素

   切片             一次至少删除一个元素,但会产生新的列表对象

   clear()      清空列表

  del()           删除整个列表对象

七、列表元素的修改操作

  为指定元素的索引重新赋值

   为指定的切片赋予一个新值

 八、列表的排序操作

  调用sort()方法,列表中的所有元素默认按照从小到大的顺序进行排序,可以指定reverse=True,进行降序排序

  调用内置函数sorted(),可以指定reverse=True,进行降序排序,原列表不发生变化,将产生新的列表对象

 

lst = ['you ',12,'me','you',98,'hello',20,20,30]
lst2 = list(['you','me',98])
# lst.append(100)
# lst.append(lst2)#将lst2作为一个元素添加在lst之后
# lst.extend(lst2)
# lst.insert(0,90)
# lst[1:]=lst2

#删除操作
# lst.remove(20)
# lst.pop(0)
# lst.pop()
# new_lst = lst[1:3]
# print(new_lst)

#修改
# lst[0] = 'liu'
# lst[1:3]=[10,20,30,40]
# print(lst)

#排序
lst1 = [10,20,60,30,90]
lst1.sort(reverse = True)
print('排序后的列表',lst1)

new_lst1 = sorted(lst1)
print(new_lst1)


#列表生成式
lst5 = [i*i for i in range(1,10)]
print(lst5)
 

九、列表生成式-----要求列表中元素具有一定规律

语法格式:

  lst =  [  i     for   i   in   range(1,10) ]

 

posted @ 2021-01-28 12:02  城东有个混子  阅读(150)  评论(0)    收藏  举报