python按顺序访问lish
列表是有序的,因此我们可以按顺序访问列表中的元素
L = ['Alice', 66, 'Bob', True, 'False', 100]
for item in L:
print(item)
事实上字符串也可以看作是一种特殊的列表,它只能按顺序存放多个字符。通过for循环访问列表每一个元素的方式,我们称为迭代
对于一个空的列表,使用for循环访问,将不会打印任何东西
L = []
for item in L:
print(item)
Python按索引访问list
由于列表list是一个有序的容器,所以在list里面,每一个元素都有一个唯一的位置,称之为索引(index),这和字符串是类似的,因此也可以通过位置的方式获取list中的元素,回顾一下前面学习的,通过中括号[]来按位置访问对应的元素
names = ['Alice', 'Bob', 'David', 'Ellena']
print(names[0])
print(names[1])
print(names[2])
print(names[3])
列表和字符串一样,也支持切片,通过切片的方式,获取到列表的子列表
names = ['Alice', 'Bob', 'David', 'Ellena']
sub_names = names[0:2]
print(sub_names)
这里需要注意一下,如果我们越界切片的话,不会出现Python运行错误,但是按照这样的下标去切片,获取不到任何元素
names = ['Alice', 'Bob', 'David', 'Ellena']
sub_names = names[5:10]
print(sub_names) # ==> []
标题python倒序访问list
python的列表
除了支持正向顺序索引获取列表中的每一个元素以外,也支持倒序访问list中的每一个元素。
names = [‘Alice’, ‘Bob’, ‘David’, ‘Ellena’]
对于names列表,Ellena的名字排在最后,也就是所说的倒数第一个,在Python中,可以使用-1来表示最后一个元素
names = ['Alice', 'Bob', 'David', 'Ellena']
print(names[-1]) #
同样的道理,可以通过-2,打印出David的名字,通过-3,打印出Bob的位置
print(names[-2]) # ==> David
print(names[-3]) # ==> Bob
注意,如果使用-5的话,因为不存在倒数第五个名字,因此这也是一种越界,同样会报错
python向list添加新的元素
现在班上有四位同学
names = ['Alice', 'Bob', 'David', 'Ellena']
python向list添加新元素
举个例子:
今天有位新同学candy来到学校
在Python中,list提供了一系列的方法可以操作list中的元素,其中也包含了添加元素的方法
其中之一append()的方式 让新同学加到列表的末尾
names = ['Alice', 'Bob', 'David', 'Ellena']
names.append('Candy')print(names) # ==> ['Alice', 'Bob', 'David', 'Ellena', 'Candy']
如果要把candy调到其他的位置
可以使用list的insert()方法,insert()方法和append()方法不一样,insert()方法需要两个参数,分别是需要插入的位置,以及需要插入的元素
按首字母排序来排列
`names = ['Alice', 'Bob', 'David', 'Ellena']
names.insert(2, 'Candy')print(names) # ==> ['Alice', 'Bob', 'Candy', 'David', 'Ellena']`
注将Candy插入到第三的位置之后,原来的名字,都将自动往后移动一位,这个时候再使用相同的索引获取后面的元素,将会得到不一样的结果
names = ['Alice', 'Bob', 'David', 'Ellena']
print(names[2]) # ==> Davidnames.insert(2, 'Candy')print(names[2]) # ==>Candy
python从lish删除元素
班上的Ellena要转学,要让Ellena从已有列表删除,这时就可以使用列表的pop()方法,pop()方法默认删除列表的最后一个元素,并返回
L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
name = L.pop()print(name) # ==> Ellena
print(L) # ==> L = ['Alice', 'Bob', 'Candy', 'David']
对于Ellena,由于Ellena恰好位于列表的最后,所以可以直接使用pop()方法把Ellena从列表的最后删除,假如需要转学的不是Ellena,而是Candy,这个时候应该怎么办呢?
pop()方法,除了可以删除最后一个元素以外,pop()还可以接收一个参数,指定需要删除的元素的位置
L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
name = L.pop(2)print(name) # ==> Candy
print(L) # ==> ['Alice', 'Bob', 'David', 'Ellena']