列表的用法(上)
列表的用法(上)
一.定义列表:
直接看例子
习题3-3 自己的列表:
想想你喜欢的通勤方式,如骑摩托车或开汽车,并创建一个包含多种通勤方式的列表。根据该列表打印一系列有关这些通勤方式的宣言,如“I would
liketo own a Honda motorcycle”。(摘自python从入门到实践)
输入:
1 commutings = ['motorbike', 'bicycle', 'bus', 'walk', 'car',] #定义了一个通勤列表,其对应元素访问下标依次为0,1,2,3,4这与C++数组下标从0开始访问一模一样 2 >>> for commuting in commutings: #这里用到了for循环,有C++基础理解起来非常轻松,这里的commuting就是循环变量(类似于我们在C++的for循环中经常使用的i,j,k变量) 3 print("I would like to own a Honda " + commuting.title() + ".") #title()方法用于将一个单词的首字母临时转换成大写
输出:
1 I would like to own a Honda Motorbike. 2 I would like to own a Honda Bicycle. 3 I would like to own a Honda Bus. 4 I would like to own a Honda Walk. 5 I would like to own a Honda Car.
列表是C++中数组的加强版,我们在定义一个列表时不用预先指定其大小(类似C++的STL容器),也不用声明其中的元素是什么类型。
所以列表在Python中是非常强大,灵活,方便的一个数据结构
而且访问列表元素和修改列表元素的方法与C++数组大同小异,这里不再赘述。下面主要来看看一些列表独有的方法:
二.列表的几个常用方法:
1.append()方法:
append的英语意义为“附加;贴上”,顾名思义,就是可以使用该方法为列表添加元素(但是是从列表的末尾进行添加的)
举个例子:
输入:
1 motorcycles = [] #定义一个空列表 2 motorcycles.append('honda') 3 motorcycles.append('yamaha') 4 motorcycles.append('suzuki') 5 print(motorcycles)
输出:
1 ['honda', 'yamaha', 'suzuki']
2.insert()方法:
insert()方法用于在列表的任何位置插入,我们可以指定这个位置(如果输入负数,则是从列表的右边往左数)
举个例子:
输入:
1 motorcycles = ['honda', 'yamaha', 'suzuki'] 2 motorcycles.insert(0, 'ducati') 3 print(motorcycles)
输出:
1 ['ducati', 'honda', 'yamaha', 'suzuki']
3.del语句(注意,这是语句不是方法,这是语句不是方法,这是语句不是方法):
del语句用于删除列表中的元素,当以后不再以任何形式使用它时就可以使用del语句
示例:
1 motorcycles = ['honda', 'yamaha', 'suzuki'] 2 print(motorcycles) 3 4 del motorcycles[0] 5 print(motorcycles)
输出为:
1 ['honda', 'yamaha', 'suzuki'] 2 ['yamaha', 'suzuki']
4.pop()方法
pop()方法用于删除列表末尾元素,也可以删除列表的任何位置的元素。
示例(之后的示例代码中包含>>>的就是输入,不包含的就是输出):
1 >>> motorcycles = ['honda', 'yamaha', 'suzuki'] 2 >>> first_owned = motorcycles.pop(0) 3 >>> print('The first motorcycle I owned was a ' + first_owned.title() + '.') 4 The first motorcycle I owned was a Honda. 5 >>> print(motorcycles) 6 ['yamaha', 'suzuki']
如何判断使用del还是pop()?
如果你要从列表中删除一个元素,且不再以任何方式使用它,就使用del 语句;
如果你要在删除元素后还能继续使用它,就使用方法pop() 。
5.remove()方法
remove()方法用于根据值删除列表中的元素(因为有时我们并不知道这个元素在列表中的具体位置--而且这样的情况又非常普遍!)
示例:
1 >>> motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati'] 2 >>> print(motorcycles) 3 ['honda', 'yamaha', 'suzuki', 'ducati'] 4 >>> too_expensive = 'ducati' 5 >>> motorcycles.remove(too_expensive) 6 >>> print(motorcycles) 7 ['honda', 'yamaha', 'suzuki'] 8 >>> print("\nA " + too_expensive.title() + " is too expensive for me.") 9 10 A Ducati is too expensive for me.
注意 方法remove() 只删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要使用循环来判断是否删除了所有这样的值。
