Python学习笔记:列表

这篇博客详细介绍了Python中列表的基本语法和注意事项,包括通过索引访问元素、追加、删除、排序、统计元素出现次数等操作。还讨论了列表的切片、加法、乘法、迭代以及如何判断元素是否在列表中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.基本语法

list1 = ['Person_1','Person_2','Person_3']

单引号/双引号都可以:

>>> list1 = ['Person_1','Person_2','Person_3']
>>> list1
['Person_1', 'Person_2', 'Person_3']
>>> list2 = ["Person_1","Person_2","Person_3"]
>>> list2
['Person_1', 'Person_2', 'Person_3']

2.注意事项

2.1 可以通过索引访问列表中元素

>>> list1[0]
'Person_1'
>>> list1[1]
'Person_2'
>>> list1[2]
'Person_3'
>>> list1[3]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range

2.2 倒索引可以逆向访问列表元素

>>> list1[-1]
'Person_3'
>>> list1[-2]
'Person_2'
>>> list1[-3]
'Person_1'
>>> list1[-4]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range

2.3 列表中0没有正负之分

>>> list1[0]
'Person_1'
>>> list1[-0]
'Person_1'

2.4 Index -> 通过值访问索引

>>> list1.index('Person_1')
0
>>> list1.index('Person_2')
1
>>> list1.index('Person_3')
2
>>> list1.index('Person_4')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: 'Person_4' is not in list

2.5 append -> 追加列表元素

>>> list1.append('Person_4')
>>> list1
['Person_1', 'Person_2', 'Person_3', 'Person_4']

2.6 元素必须加引号;也可以追加变量

>>> list1.append(Person_5)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'Person_5' is not defined
>>> name = 'Person_5'
>>> list1.append(name)
>>> list1
['Person_1', 'Person_2', 'Person_3', 'Person_4', 'Person_5']

2.7 pop -> 删除列表元素

>>> list1
['Person_1', 'Person_2', 'Person_3', 'Person_4', 'Person_5']
>>> list1.pop()
'Person_5'
>>> list1
['Person_1', 'Person_2', 'Person_3', 'Person_4']
>>> list1.pop(2)
'Person_3'
>>> list1
['Person_1', 'Person_2', 'Person_4']

2.8 insert -> 插入列表元素

>>> list1
['Person_1', 'Person_2', 'Person_4']
>>> list1.insert(2,'Person_3')
>>> list1
['Person_1', 'Person_2', 'Person_3', 'Person_4']

2.9 push -> 列表中没有push功能

>>> list1.push('Person_5')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'list' object has no attribute 'push'

2.10 sort -> 列表排序

>>> list1 = [1,8,9,1,6,9,6,0,8,5,1]
>>> list1
[1, 8, 9, 1, 6, 9, 6, 0, 8, 5, 1]
>>> list1.sort()
>>> list1
[0, 1, 1, 1, 5, 6, 6, 8, 8, 9, 9]

2.11 反转排序

注:python 3.x不支持sort()里面传参数

>>> list1 = [1,8,9,1,6,9,6,0,8,5,1]
>>> list1
[1, 8, 9, 1, 6, 9, 6, 0, 8, 5, 1]
>>> list1.sort(reverse = True)
>>> list1
[9, 9, 8, 8, 6, 6, 5, 1, 1, 1, 0]

2.12 sorted -> 通用排序函数

>>> list1 = [1,8,9,1,6,9,6,0,8,5,1]
>>> list1
[1, 8, 9, 1, 6, 9, 6, 0, 8, 5, 1]
>>> sorted(list1)
[0, 1, 1, 1, 5, 6, 6, 8, 8, 9, 9]
>>> sorted(list1,reverse = True)
[9, 9, 8, 8, 6, 6, 5, 1, 1, 1, 0]

2.13 count -> 统计元素出现次数

>>> list1 = [1,8,9,1,6,9,6,0,8,5,1]
>>> list1.count(1)
3
>>> list1.count(9)
2
>>> list1.count(0)
1
>>> list1.count(4)
0

2.14 extend -> 列表拓展

>>> list1 = [189,169,60851]
>>> list2 = ['peter']
>>> list2.extend(list1)
>>> list1
[189, 169, 60851]
>>> list2
['peter', 189, 169, 60851]

2.15 remove -> 移除列表中的元素

注:移除remove参数中指定的元素,如果多个,移除第一个

>>> list1 = [1,8,9,1,6,9,6,0,8,5,1]
>>> list1
[1, 8, 9, 1, 6, 9, 6, 0, 8, 5, 1]
>>> list1.remove(6)
>>> list1
[1, 8, 9, 1, 9, 6, 0, 8, 5, 1]

2.16 reverse -> 反转列表中的元素

>>> list1 = [1,8,9,1,6,9,6,0,8,5,1]
>>> list1.reverse()
>>> list1
[1, 5, 8, 0, 6, 9, 6, 1, 9, 8, 1]

2.17 cmp -> 比较列表中的元素

>>> list1 = [1,2,3]
>>> list2 = [1,2,3]
>>> cmp(list1,list2)
0
>>> list1 = ['a','b','c']
>>> list2 = [1,2,3]
>>> cmp(list1,list2)
1
>>> list1 = [1.0,2.0,3.0]
>>> list2 = [1,2,3]
>>> cmp(list1,list2)
0
>>> list1 = [1,2,3]
>>> list2 = [1,1,3]
>>> cmp(list1,list2)
1
>>> list1 = [1,2,3]
>>> list2 = [1,3,3]
>>> cmp(list1,list2)
-1
>>> list1 = ['a','b','c']
>>> list2 = ["a","b","c"]
>>> cmp(list1,list2)
0
>>> list1 = [1,2,3]
>>> list2 = [1,1,4]
>>> cmp(list1,list2)
1
>>> cmp(list2,list1)
-1

2.18 max / min -> 列表中的最大 / 最小元素

>>> list1 = [1,8,9,1,6,9,6,0,8,5,1]
>>> max(list1)
9
>>> min(list1)
0

2.19 替换元素

>>> list1 = [1,8,9,1,6,9,6,0,8,5,1]
>>> list1[3] = 'a'
>>> list1
[1, 8, 9, 'a', 6, 9, 6, 0, 8, 5, 1]

2.20 list里面的元素可以是一个list

>>> list1 = ['peter',[1,2,3],30]
>>> list1
['peter', [1, 2, 3], 30]
>>> len(list1)
3

2.21 访问list里的list的元素

>>> list1 = ['peter',[1,2,3],30]
>>> list1[0]
'peter'
>>> list1[1]
[1, 2, 3]
>>> list1[1][1]
2

2.22 列表的切片(截取)

>>> list1 = [1,8,9,1,6,9,6,0,8,5,1]
>>> list1
[1, 8, 9, 1, 6, 9, 6, 0, 8, 5, 1]
>>> list1[2:5]
[9, 1, 6]
>>> list1[2:]
[9, 1, 6, 9, 6, 0, 8, 5, 1]
>>> list1[:5]
[1, 8, 9, 1, 6]
>>> list1[:]
[1, 8, 9, 1, 6, 9, 6, 0, 8, 5, 1]
>>> list1[]
  File "<stdin>", line 1
    list1[]
          ^
SyntaxError: invalid syntax

2.23 列表的加法

>>> list1 = [1,2,3]
>>> list2 = [4,5,6]
>>> list1 + list2
[1, 2, 3, 4, 5, 6]
>>> [1,2,3] + ['a','b','c']
[1, 2, 3, 'a', 'b', 'c']

2.24 列表的乘法

>>> list1 = [1,2,3]
>>> list1 * 2
[1, 2, 3, 1, 2, 3]

2.25 列表的迭代

注:
① y无需定义
② for语句后要有缩进
③ 无语句时直接回车即可

>>> for y in [1,8,9,1,6,9,6,0,8,5,1]:
...     print y
... 
1
8
9
1
6
9
6
0
8
5
1

2.26 判断元素在列表中是否存在

>>> x = 3
>>> x in [1,2,3]
True
>>> x in [4,5,6]
False

2.27 对于未定义的变量不能使用此语句

>>> z in [1,2,3]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'z' is not defined
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值