Python列表

列表

一、概述

列表可以一次性存储多个数据,且可以存储不同数据

[数据1,数据2,数据3,数据4……]

二、常用操作

1. 查找

1.1 下标
In [1]: list1=['Tom','Jack','Marry']

In [2]: print(list1[0])
Tom

In [3]: print(list1[1])
Jack

In [4]: print(list1[2])
Marry
1.2 函数
  • index():返回数据所在位置下标
列表序列.index(数据,开始位置下标,结束位置下标) 
  • count():统计指定数据在当前列表中出现的次数

  • len():访问列表长度,即列表中数据个数

In [6]: list1=['Tom','Jack','Marry','Jack']

# 返回元素所在位置下标
In [7]: list1.index('Tom')
Out[7]: 0

In [8]: list1.index('Jack')
Out[8]: 1

# 不存在的数据,index()函数会报错
In [9]: list1.index('Lily')
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-9-2e6792b836de> in <module>()
----> 1 list1.index('Lily')

ValueError: 'Lily' is not in list

# 统计列表中元素的个数
In [10]: list1.count('Jack')
Out[10]: 2

# 统计列表中元素的个数,不存在则返回0
In [11]: list1.count('Lily')
Out[11]: 0

# 统计列表的长度,即元素个数
In [12]: len(list1)
Out[12]: 4
1.3 判断是否存在
  • in:判断指定数据在某个列表,在则返回True,否则返回False
  • not in:判断指定数据不在列表中,如果不在则返回True,否则返回False
In [13]: list1=['Tom','Jack','Marry','Jack']

In [14]: 'Tom' in list1
Out[14]: True

In [15]: 'Lily' in list1
Out[15]: False

In [16]: 'Lily' not in list1
Out[16]: True

In [17]: 'Tom' not in list1
Out[17]: False

2. 添加

  • append():列表结尾追加数据
列表序列.append(数据)
  • extend():列表结尾追加数据,如果是一个序列,则将这个序列的数据逐一添加到列表
列表序列.extend(数据)
  • insert():指定位置添加数据
列表序列.insert(位置下标,数据)
# append()函数的使用
In [18]: list1=['Tom','Jack','Marry']

In [19]: list1.append('Lily')

In [20]: print(list1)
['Tom', 'Jack', 'Marry', 'Lily']

# 当使用append添加的为一个列表时,此时会将整个列表进行添加
In [22]: list1.append(['Job','Rose'])

In [23]: print(list1)
['Tom', 'Jack', 'Marry', 'Lily', ['Job', 'Rose']]

# extend()函数的使用
In [24]: list1=['Tom','Jack','Marry']

In [25]: list1.extend('Lily')

# 此时extend()函数会将‘Lily’进行拆分,然后追加到列表结尾
In [26]: print(list1)
['Tom', 'Jack', 'Marry', 'L', 'i', 'l', 'y']

In [28]: list1.extend(['Lily','Rose'])

In [29]: print(list1)
['Tom', 'Jack', 'Marry', 'L', 'i', 'l', 'y', 'Lily', 'Rose']

# insert()函数的使用
In [30]: list1=['Tom','Jack','Marry']

In [31]: list1.insert(1,'Rose')

In [32]: print(list1)
['Tom', 'Rose', 'Jack', 'Marry']

3. 删除

  • del函数
del 目标
del(目标)
del list1[下标]
  • pop()函数:删除指定下标的数据,如果不指定下标,默认删除最后一个,并且会将删除的数据返回
# del函数的使用
In [33]: list1=['Tom','Jack','Marry']

# 删除列表list1
In [34]: del list1

# 此时list1已经被删除,再去打印时会报错:NameError: name 'list1' is not defined
In [35]: print(list1)
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-35-7fd613c3c7e4> in <module>()
----> 1 print(list1)

NameError: name 'list1' is not defined

In [36]: list1=['Tom','Jack','Marry']

# 删除指定列表中的元素
In [37]: del list1[1]

In [38]: print(list1)
['Tom', 'Marry']

# pop()函数的使用
In [39]: list1=['Tom','Jack','Marry']

# 使用pop()函数删除,不指定下标则默认删除最后一个元素,并且会返回,此处Out即为返回的数据
In [40]: list1.pop()
Out[40]: 'Marry'

In [41]: list1=['Tom','Jack','Marry']

# 删除指定下标的数据
In [42]: list1.pop(1)
Out[42]: 'Jack'
  • remove()函数

  • clear()函数:清空列表

# remove()函数的使用
In [43]: list1=['Tom','Jack','Marry']

# 删除'Marry'
In [44]: list1.remove('Marry')

In [45]: print(list1)
['Tom', 'Jack']

# 使用clear()函数清空列表
In [46]: list1.clear()

In [47]: print(list1)
[]

4. 修改

  • 修改指定下标的数据举例:list1[0]=新的值

  • reverse():逆置

  • sort():排序

  • reverse表示排序规则,reverse=True降序,reverse=False升序(默认)

列表序列.sort(key=None,reverse=False)
In [49]: list1=[5,3,6,2,0,4,2,1]

In [50]: list1[3]=7

In [51]: print(list1)
[5, 3, 6, 7, 0, 4, 2, 1]

# 使用reverse()函数对列表进行逆置
In [52]: list1.reverse()

In [53]: print(list1)
[1, 2, 4, 0, 7, 6, 3, 5]

# 排序,默认为升序
In [54]: list1.sort()

In [55]: print(list1)
[0, 1, 2, 3, 4, 5, 6, 7]

# 排序,将reverse改为True则为降序
In [56]: list1.sort(reverse=True)

In [57]: print(list1)
[7, 6, 5, 4, 3, 2, 1, 0]

5. 复制

  • 函数:copy()
In [58]: list1=['Tom','Jack','Marry']

In [59]: new_list=list1.copy()

In [60]: print(new_list)
['Tom', 'Jack', 'Marry']

三、遍历

1. while循环

  • 代码演示
In [61]: list1=['Tom','Jack','Marry','Rose']

In [62]: i=0

In [63]: while i<len(list1):
    ...:     print(list1[i],end=" ")
    ...:     i+=1
    ...:     
Tom Jack Marry Rose 

2. for循环

In [64]: list1=['Tom','Jack','Marry','Rose']

In [65]: for i in list1:
    ...:     print(i,end=" ")
    ...:     
Tom Jack Marry Rose 

四、列表嵌套

list1=[['小明','小红','小王'],['Tom','Marry','Jack'],['张三','李四','王五']]

1. 查询

In [66]: list1=[['Tom','Jack','Marry'],['小明','小王','小张'],['张三','李四','王
    ...: 五']]

# 查找小明
In [67]: print(list1[1][0])
小明

五、其他

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ysw!不将就

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值