列表(list----线性表)

常见的线性表 ------ 数组、链表,队列、栈 -------- 基于链表实现

注意:python没有数组的

特点:连续的 查询快 删除比较麻烦

链表:单向链表和双向链表

栈:先进后出

队列:先进先出

列表----- 基于双向链表实现的

定义方式:

第一种:根据弱数据类型语言的特点进行定义

例如: ls = [1,2,3,4]

第二种:使用全局函数 list()

例如: ls1 = list()

ls2 = list([1,2,3,4,5])

访问列表中的元素:

通过下标访问,下标从0开始,超过则会报错,而且下标可以为负数

求列表的长度:

len() ------ 返回容器的长度

遍历列表:

概念:遍历列表,就是将列表中所有的元素都提取出来

方法如下:

1、使用 for 循环

for i in ls:
    print(i)

2、使用 while 循环

index = 0
while index < len(ls):
    print(ls[index])
    index += 1

列表中常用的方法:

append()  -------  在列表的尾部添加元素

使用方法:

>>> ls = [1,2,3,5]
>>> print(ls)
[1, 2, 3, 5]
>>> ls.append(6)
>>> print(ls)
[1, 2, 3, 5, 6]

insert(index,object)  -------  向指定的位置添加元素

 使用方法:

>>> print(ls)
[1, 2, 3, 5, 6]
>>> ls.insert(3,8)
>>> print(ls)
[1, 2, 3, 8, 5, 6]

sort()  -------  列表排序(默认从小到大排序,且默认为 int 类型)  如果是字母  则按照ASCLL的值进行排序,元素必须一致,否则就会报错

使用方法:

>>> print(ls)
[1, 2, 3, 8, 5, 6]
>>> ls.sort()
>>> print(ls)
[1, 2, 3, 5, 6, 8]
>>> ls1 = ['a','A','B','e']
>>> print(ls1)
['a', 'A', 'B', 'e']
>>> ls1.append(4)
>>> ls1.append(6)
>>> ls1.append(1)
>>> print(ls1)
['a', 'A', 'B', 'e', 4, 6, 1]
>>> ls1.sort()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: '<' not supported between instances of 'int' and 'str'

index()  -------- 查找某一个元素在列表中的位置(第一次出现的位置),返回的结果是所查找元素的下标

使用方法:

>>> print(ls)
[1, 2, 3, 5, 6, 8]
>>> ls.index(5)
3
>>> ls.index(1)
0

reverse() ------- 将列表进行翻转

使用方法:

>>> ls.reverse()
>>> print(ls)
[8, 6, 5, 3, 2, 1]
>>> print(ls)
[8, 6, 5, 3, 2, 1]
>>> ls.reverse()
>>> print(ls)
[1, 2, 3, 5, 6, 8]

count() ------- 统计列表中某一个元素出现的次数

使用方法:

>>> print(ls)
[1, 2, 3, 5, 6, 8, 5]
>>> ls.count(5)
2
>>> ls.count(2)
1

remove() ------- 删除元素(移除),通过元素删除,如果所删除的元素多次出现,则删除处于第一位置的元素,元素不存在则会报错

使用方法:

>>> print(ls)
[1, 2, 3, 5, 6, 8, 5]
>>> ls.remove(1)
>>> print(ls)
[2, 3, 5, 6, 8, 5]
>>> ls.remove(5)
>>> print(ls)
[2, 3, 6, 8, 5]
>>> ls.remove(9)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: list.remove(x): x not in list

clear() ------- 清除列表

使用方法: 

>>> ls.clear()
>>> print(ls)
[]

copy()  ------ 拷贝  浅拷贝对象  不等价于 = 在堆内存进行的拷贝

使用方法:

>>> ls = [1,2,3,6,4]
>>> print(ls)
[1, 2, 3, 6, 4]
>>> ls1 = ls.copy()
>>> print(ls1)
[1, 2, 3, 6, 4]

extend() ------ 合并列表

使用方法:

>>> print(ls1)
[1, 2, 3, 6, 4]
>>> ls.extend(ls1)
>>> print(ls)
[1, 2, 3, 6, 4, 1, 2, 3, 6, 4]
>>>

pop() ------- 与 append() 相反,删除列表最后一个元素,返回的是删除掉的元素(有返回值的),如果要删除指定位置的元素用 pop(i)  ,i指的是下标

使用方法:

>>> print(ls)
[1, 2, 3, 6, 4, 1, 2, 3, 6, 4]
>>> ls.pop()
4
>>> ls.pop(2)
3
>>> print(ls)
[1, 2, 6, 4, 1, 2, 3, 6]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值