1、简介
列表同一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0~9或者所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters、digits或者names)是个不错的主意。
在python中,用方括号[ ]来表示列表,并用逗号来分隔其中的元素。如
names = ['张三', '李四', '王五', '赵六']
print(names)
结果:
['张三', '李四', '王五', '赵六']
2、访问列表元素
列表是有序集合,因此要访问列表的任何元素,只需要将该元素的位置或索引告诉python即可,要访问列表元素,可以指出列表的名称,再指出元素的名称,并将其放入方括号内。
names = ['张三', '李四', '王五', '赵六']
print(names[0])
结果:
张三
在python中,列表元素的索引是从0开始的,而不是1,在大多数编程语言中都是如此,这与列表操作的底层相关。
3、修改列表元素
你创建的大多数列表都将是动态的,这意味着列表创建后,将随着程序的运行而动态的增删列表中的元素。修改列表元素的语法与访问列表元素的语法类似,要修改列表元素,可以指定列表名和要修改的元素的索引,再指定该元素的新值。如:
names = ['张三', '李四', '王五', '赵六']
print(names)
names[1] = '孙九'
print(names)
结果:
['张三', '李四', '王五', '赵六']
['张三', '孙九', '王五', '赵六']
4、在列表中添加元素
在列表中添加新元素时,最简单的方式是将元素附加到列表的末尾,python提供append()方法将元素添加到列表的末尾,而不影响列表中的其他所有元素,方法append()让动态地创建列表易如反掌,例如,你可以先创建一个空列表,再使用一系列的append()语句来为所创建的空列表添加元素。如:
names = []
names.append('张三')
names.append('李四')
names.append('王五')
names.append('赵六')
print(names)
结果:
['张三', '李四', '王五', '赵六']
python中还提供了insert()方法让我们可以在列表的任何位置添加新元素,为此,我们只需要指定新元素的索引和值就可以了。如:
names = ['张三', '李四', '王五', '赵六']
print(names)
names.insert(2,'lucy')
print(names)
结果:
['张三', '李四', '王五', '赵六']
['张三', '李四', 'lucy', '王五', '赵六']
5、从列表中删除元素
我们经常需要从列表中删除一个或者多个元素,如当用户在我们所创建的Web应用中注销其账户时,我们就需要将该用户从在用用户列表中删除。
5.1 使用del语句删除元素,如果知道要删除的元素在列表中的位置,可以使用del语句来进行删除:
names = ['张三', '李四', '王五', 'lucy','赵六']
print(names)
del names[2]
print(names)
结果:
['张三', '李四', '王五', 'lucy', '赵六']
['张三', '李四', 'lucy', '赵六']
5.2 使用pop()方法可以让我们删除列表末尾的元素,并让我们能够接着使用它:
names = ['张三', '李四', '王五', 'lucy','赵六']
print(names)
name1 = names.pop()
print(name1)
print(names)
结果:
['张三', '李四', '王五', 'lucy', '赵六']
赵六
['张三', '李四', '王五', 'lucy']
实际上,我们还可以使用pop()方法来删除列表中任何位置的元素,而我们只需要在括号中指定要删除的元素的索引阳即可:
names = ['张三', '李四', '王五', 'lucy','赵六']
print(names)
name1 = names.pop(3)
print(name1)
print(names)
结果:
['张三', '李四', '王五', 'lucy', '赵六']
lucy
['张三', '李四', '王五', '赵六']
总结:
如果我们不确定该使用del语句还是pop()方法时,我们可以参照这个简单的判断标准:如果你要从列表中删除一个元素,且不再以任何方式使用它,就使用del语句;如果你要在删除元素后还能继续使用它,就使用方法pop()。