学习python3之初2-容器的使用(1)
一、列表
列表是由一系列按特定顺序排列的元素组成。列表可以包含字母表中所有字母、数字0-9;也可以在列表中加入你想要加入的任何东西,列表中的元素之间没有任何关系。列表一般都是包含多个元素,所以建议给列表指定一个复数的名称。
列表用方括号([])表示,用逗号分割其中的元素。
bicycles = ['trek','cannondale','redline','specialized'] #列表中包含几种自行车
print(bicycles)
显示结果:['trek','cannondale','redline','specialized']
1、访问列表元素:
列表的索引是从0开始:
也可以从-1开始:
例如:
list = [0,1,2,3,4,5]
print(list[0])#访问列表中的第一个元素
print(list[-1])#访问列表的最后一个元素
输出结果:
0
5
2、修改列表中的元素
直接访问修改列表元素,如下:
list = ['honda','yamaha','suzuki']
list[0] = 'ducati'#直接访问修改列表的第一个元素
print(list)
结果:list = ['ducati','yamaha','suzuki']
3、在列表中添加元素
①直接在列表的末尾添加元素,使用append()方法。
list = [] #创建空列表
#直接往列表的末尾添加元素
list.append('alice')
list.append('david')
list.append('tom')
print(list)#输出列表
输出结果:['alice','david','tom']
②在列表中插入元素,使用insert(index,obj)方法。index表示插入元素的索引位置,obj表示插入的元素。
list = ['alice','david','rose']
list.insert(0,'tom')#将元素插入到列表的第一个位置
list.insert(2,'xiaoming')#将元素插入到列表的第三个位置
print(list)
值得注意的是,列表是动态变化的。所以在将第一个元素插入在列表中之后,列表的索引就发生了变化。
如下,显示结果为:['tom','alice','xiaoming','david','rose']
4、删除列表中的元素
①使用del语句删除元素,del语句删除之后就无法访问该元素了。
list = ['tom','alice','xiaoming','david','rose']
print(list)
del list[0]#使用del语句删除列表的第一个元素
print(list)
显示结果:
['tom','alice','xiaoming','david','rose']
['alice','xiaoming','david','rose']
②使用pop([index=-1])方法删除列表元素,默认删除列表最后一个元素,也可以指定删除的元素。
注:pop()方法删除列表元素之后依然可以使用,但是需要提前将元素值赋给另一个变量。
list = ['alice','xiaoming','david','rose']
name1 = list.pop()#默认删除列表最后一个元素
name2 = list.pop(1)#指定删除列表第二个元素
print(list)
print('Hello,' + name2.title() + ',My name is ' + name1.title())#引用列表中被删除的元素值
title()方法是将单词的首字母以大写的形式输出。
显示结果:
['alice', 'david']
Hello,Xiaoming,My name is Rose
③根据值删除元素,使用remove()方法,若不知道删除的元素在什么位置就可以使用这个方法。同样的该方法也可以在删除之后继续调用。
list = ['alice','xiaoming','david','rose']
print(list)
name = 'alice'#将元素值赋给变量name
list.remove(name)#使用remove()方法将元素从列表中移除
print(list)
print('\nMy name is ' + name.title())#继续调用被删除的元素值
显示结果:
['alice', 'xiaoming', 'david', 'rose']
['xiaoming', 'david', 'rose']
My name is Alice
二、元组
列表适合用于存储在程序运行期间可能变化的数据集。列表是可以修改的,但是有些时候需要一系列不可修改的元素,此时可以使用元组。python将不能修改的值称为不可变的,而不可变的列表被称为元组。
元组看起来类似于列表,但是是使用圆括号(())标识。定义元素之后就可以访问其中的元素,就像访问列表元素一样。
tuple = ('alice','david','rose','tom')
print(tuple[0])#访问元组的第一个元素
print(tuple[-1])#访问元组的最后一个元素
输出结果:
alice
tom
修改元组变量:
虽然不能修改元组的元素,但是可以给存储元组的变量赋值。相当于重新定义了元组。
tuple = ('david','alice','rose')
print('修改之前的元组:')
print(tuple)
#相当于重新定义元组
tuple = ('alice','rose','tom')
print('修改后的元组:')
print(tuple)
输出结果:
修改之前的元组:
('david', 'alice', 'rose')
修改后的元组:
('alice', 'rose', 'tom')
注:相比于列表,元组是更简单的数据结构。如果需要存储的一组值在程序的整个生命周期内都不变,可使用元组。