Python 列表list

前言

列表,又称序列、list,是python中最基本的数据结构。

list为可变数据类型,也具有上限,不过这个数很大,一般不会考虑

1、32位python的限制是 536870912 个元素。

2、64位python的限制是 1152921504606846975 个元素。

列表书写格式为:方挎号将数据挎起来,其内的数据使用逗号进行分割。每个数据对应的位置具有一个位置值,称为索引。正序从0开头,反序以-1开头。

>>> list_1 = ['a','b','c','d','e','f','g']
>>> list_1[1]
'b'
>>> list_1[0]
'a'
>>> list_1[-1]
'g'

向list中添加元素的方法:

1、append

list具有append方法,会向list末尾添加数据。注意是末尾位置,且没有返回值,是在原有的list中添加。这里涉及list的可变属性。

a = [1,2,3,4,5,6]
b = ['a','b','c','d','e','f','g']
a.append(b)
print(a)
结果:
[1, 2, 3, 4, 5, 6, ['a', 'b', 'c', 'd', 'e', 'f', 'g']] #b作为一个整体添加到a
a = [1,2,3,4,5,6]
b = ['a','b','c','d','e','f','g']
c = a.append(b)
print(c)
结果:
None #这里可以看到c并没有被赋值

2、+号

a = [1,2,3,4,5,6]
b = ['a','b','c','d','e','f','g']
c = a + b
print(c)
结果:
[1, 2, 3, 4, 5, 6, 'a', 'b', 'c', 'd', 'e', 'f', 'g'] # b连接到a末尾

3、extend方法

a = [1,2,3,4,5,6]
b = ['a','b','c','d','e','f','g']
a.extend(b)
print(a)
结果:
[1, 2, 3, 4, 5, 6, 'a', 'b', 'c', 'd', 'e', 'f', 'g'] #类似+号

这块需要注意,extend传入的参数必须为可迭代对象。

a = [1,2,3,4,5,6]
b = ['a','b','c','d','e','f','g']
c=1234
a.extend(c)
print(a)
结果:出错。
    a.extend(c)
TypeError: 'int' object is not iterable

4、insert

Insert object before index,第一个参数为插入的位置,第二个参数为插入object
a = [1,2,3,4,5,6]
b = ['a','b','c','d','e','f','g']
a.insert(2,b)
print(a)
结果:
[1, 2, ['a', 'b', 'c', 'd', 'e', 'f', 'g'], 3, 4, 5, 6]

1、pop方法:

删除并返回索引项(默认最后)。如果列表为空或索引超出范围则引发IndexError。这是根据下标删除元素

a = [1,2,3,4,5,6]
a.pop(1)
print(a)
结果:
[1, 3, 4, 5, 6] #删除下标为1的元素

2、remove方法

删除第一个出现的值,如果值不存在将引发ValueError。删除list已有的元素。

a = [1,2,3,4,5,6]
a.remove(2)
print(a)
结果:
[1, 3, 4, 5, 6]

3、del

根据下标删除

a = [1,2,3,4,5,6]
del a[1]
print(a)
结果:
[1, 3, 4, 5, 6]

改、查

通过下标来修改list中的元素,通过下标查看list中的元素

a = [1,2,3,4,5,6]
a[1] = 'Python'
print(a)
print(a[1])
结果:
[1, 'Python', 3, 4, 5, 6]
Python

list的切片

切片的语法:[起始位置:结束位置:步长]。参数都可省略,第二个冒号也可省略。

a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
print(a[1:10:2])
print(a[:15:3])
print(a[::2])
print(a[1:10])
print(a[::])
结果:
[2, 4, 6, 8, 10]
[1, 4, 7, 10, 13]
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
[2, 3, 4, 5, 6, 7, 8, 9, 10]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
#也可有负数下标,方法都一样

 

 

list的其他方法:

可参考教程。

 

posted @ 2021-07-19 11:03  老徐-lex  阅读(170)  评论(0编辑  收藏  举报