现在的位置: 首页 > 综合 > 正文

Python学习笔记(十六)—-Python列表(Lists)

2017年11月28日 ⁄ 综合 ⁄ 共 6659字 ⁄ 字号 评论关闭

一、Python 列表

       序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

       Python有6个序列的内置类型,但最常见的是列表和元组。

       序列都可以进行的操作包括索引,切片,加,乘,检查成员。

       此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。

        列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型。

       创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];

与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。

二、访问列表中的值

使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符,如下所示:

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];

print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]

以上实例输出结果:

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]

三、更新列表

你可以对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项,如下所示:

#!/usr/bin/python

list = ['physics', 'chemistry', 1997, 2000];

print "Value available at index 2 : "
print list[2];
list[2] = 2001;
print "New value available at index 2 : "
print list[2];

注意:我们会在接下来的章节讨论append()方法的使用

以上实例输出结果:

Value available at index 2 :
1997
New value available at index 2 :
2001

四、删除列表元素

可以使用 del 语句来删除列表的的元素,如下实例:

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];

print list1;
del list1[2];
print "After deleting value at index 2 : "
print list1;

以上实例输出结果:

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]

注意:我们会在接下来的章节讨论remove()方法的使用


五、Python列表脚本操作符

列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。

如下所示:

Python 表达式 结果 描述
len([1, 2, 3]) 3 长度
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 组合
['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!'] 重复
3 in [1, 2, 3] True 元素是否存在于列表中
for x in [1, 2, 3]: print x, 1 2 3 迭代




六、Python列表截取

Python的列表截取与字符串操作类型,如下所示:

L = ['spam', 'Spam', 'SPAM!']

操作:

Python 表达式 结果 描述
L[2] 'SPAM!' 读取列表中第三个元素
L[-2] 'Spam' 读取列表中倒数第二个元素
L[1:] ['Spam', 'SPAM!'] 从第二个元素开始截取列表


七、Python列表函数

Python包含以下函数:

序号 函数
1 cmp(list1, list2)
比较两个列表的元素
2 len(list)
列表元素个数
3 max(list)
返回列表元素最大值
4 min(list)
返回列表元素最小值
5 list(seq)
将元组转换为列表


详细解释:

(一)Python List cmp()方法

1、描述
cmp() 方法用于比较两个列表的元素。

2、语法
cmp()方法语法:

cmp(list1, list2)

3、参数

list1 -- 比较的列表。

list2 -- 比较的列表。

4、返回值

(1)如果比较的元素是同类型的,则比较其值,返回结果。

(2)如果两个元素不是同一种类型,则检查它们是否是数字。

  • 如果是数字,执行必要的数字强制类型转换,然后比较。
  • 如果有一方的元素是数字,则另一方的元素"大"(数字是"最小的")
  • 否则,通过类型名字的字母顺序进行比较。

(3)如果有一个列表首先到达末尾,则另一个长一点的列表"大"。

(4)如果我们用尽了两个列表的元素而且所 有元素都是相等的,那么结果就是个平局,就是说返回一个 0。

5、实例

以下实例展示了 cmp()函数的使用方法:

#!/usr/bin/python

list1, list2 = [123, 'xyz'], [456, 'abc']

print cmp(list1, list2);
print cmp(list2, list1);
list3 = list2 + [786];
print cmp(list2, list3)

以上实例输出结果如下:

-1
1
-1


(二)Python List len()方法

1、描述

len() 方法返回列表元素个数。

2、语法

len()方法语法:

len(list)

3、参数

list -- 要计算元素个数的列表。

4、返回值

返回列表元素个数。

5、实例

以下实例展示了 len()函数的使用方法:

#!/usr/bin/python

list1, list2 = [123, 'xyz', 'zara'], [456, 'abc']

print "First list length : ", len(list1);
print "Second list length : ", len(list2);

以上实例输出结果如下:

First list length :  3
Second lsit length :  2

(三)Python List max()方法

1、描述

max() 方法返回列表元素中的最大值。

2、语法

max()方法语法:

max(list)

3、参数

list -- 要返回最大值的列表。

4、返回值
返回列表元素中的最大值。

5、实例

以下实例展示了 max()函数的使用方法:

#!/usr/bin/python

list1, list2 = [123, 'xyz', 'zara', 'abc'], [456, 700, 200]

print "Max value element : ", max(list1);
print "Max value element : ", max(list2);

以上实例输出结果如下:

Max value element :  zara
Max value element :  700


(四)Python List min()方法

1、描述

min() 方法返回列表元素中的最小值。

2、语法

min()方法语法:

min(list)

3、参数

list -- 要返回最小值的列表。

4、返回值

返回列表元素中的最小值。

5、实例

以下实例展示了 min()函数的使用方法:

#!/usr/bin/python

list1, list2 = [123, 'xyz', 'zara', 'abc'], [456, 700, 200]

print "min value element : ", min(list1);
print "min value element : ", min(list2);

以上实例输出结果如下:

min value element :  123
min value element :  200


(五)Python List list()方法

1、描述

list() 方法用于将元组转换为列表。

注:

元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中。

2、语法

list()方法语法:

list( seq )

3、参数

list -- 要转换为列表的元组。

4、返回值

返回列表。

5、实例

以下实例展示了 list()函数的使用方法:

#!/usr/bin/python

aTuple = (123, 'xyz', 'zara', 'abc');
aList = list(aTuple)

print "List elements : ", aList

以上实例输出结果如下:

List elements :  [123, 'xyz', 'zara', 'abc']


八、Python列表方法

Python包含以下方法:

序号 方法
1 list.append(obj)
在列表末尾添加新的对象
2 list.count(obj)
统计某个元素在列表中出现的次数
3 list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4 list.index(obj)
从列表中找出某个值第一个匹配项的索引位置
5 list.insert(index, obj)
将对象插入列表
6 list.pop(obj=list[-1])
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7 list.remove(obj)
移除列表中某个值的第一个匹配项
8 list.reverse()
反向列表中元素
9 list.sort([func])
对原列表进行排序


详细解释:

(一)Python List append()方法

1、描述
append() 方法用于在列表末尾添加新的对象。

2、语法

append()方法语法:

list.append(obj)

3、参数

obj -- 添加到列表末尾的对象。

4、返回值

该方法无返回值,但是会修改原来的列表。

5、实例

以下实例展示了 append()函数的使用方法:

#!/usr/bin/python

aList = [123, 'xyz', 'zara', 'abc'];
aList.append( 2009 );
print "Updated List : ", aList;

以上实例输出结果如下:

Updated List :  [123, 'xyz', 'zara', 'abc', 2009]


(二)Python List count()方法

1、描述

count() 方法用于统计某个元素在列表中出现的次数。

2、语法

count()方法语法:

list.count(obj)

3、参数

obj -- 列表中统计的对象。

4、返回值

返回元素在列表中出现的次数。

5、实例

以下实例展示了 count()函数的使用方法:

#!/usr/bin/python

aList = [123, 'xyz', 'zara', 'abc', 123];

print "Count for 123 : ", aList.count(123);
print "Count for zara : ", aList.count('zara');

以上实例输出结果如下:

Count for 123 :  2
Count for zara :  1


(三)Python List extend()方法

1、描述

extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。

2、语法

extend()方法语法:

list.extend(seq)

3、参数

seq -- 元素列表。

4、返回值

该方法没有返回值,但会在已存在的列表中添加新的列表内容。

5、实例

以下实例展示了 extend()函数的使用方法:

#!/usr/bin/python

aList = [123, 'xyz', 'zara', 'abc', 123];
bList = [2009, 'manni'];
aList.extend(bList)

print "Extended List : ", aList ;

以上实例输出结果如下:

Extended List :  [123, 'xyz', 'zara', 'abc', 123, 2009, 'manni']


(四)Python List insert()方法

1、描述

insert() 函数用于将指定对象插入列表。

2、语法

insert()方法语法:

list.insert(index, obj)

3、参数

index -- 对象obj需要插入的索引位置。

obj -- 要出入列表中的对象。

4、返回值

该方法没有返回值,但会在列表指定位置插入对象。

5、实例

以下实例展示了 insert()函数的使用方法:

#!/usr/bin/python

aList = [123, 'xyz', 'zara', 'abc']

aList.insert( 3, 2009)

print "Final List : ", aList

以上实例输出结果如下:

Final List : [123, 'xyz', 'zara', 2009, 'abc']


(五)Python List insert()方法

1、描述

insert() 函数用于将指定对象插入列表。

2、语法

insert()方法语法:

list.insert(index, obj)

3、参数

index -- 对象obj需要插入的索引位置。

obj -- 要出入列表中的对象。

4、返回值

该方法没有返回值,但会在列表指定位置插入对象。

5、实例

以下实例展示了 insert()函数的使用方法:

#!/usr/bin/python

aList = [123, 'xyz', 'zara', 'abc']

aList.insert( 3, 2009)

print "Final List : ", aList

以上实例输出结果如下:

Final List : [123, 'xyz', 'zara', 2009, 'abc']


(六)Python List pop()方法

1、描述

pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。

2、语法

pop()方法语法:

list.pop(obj=list[-1])

3、参数

obj -- 可选参数,要移除列表元素的对象。

4、返回值

该方法返回从列表中移除的元素对象。

5、实例

以下实例展示了 pop()函数的使用方法:

#!/usr/bin/python

aList = [123, 'xyz', 'zara', 'abc'];

print "A List : ", aList.pop();
print "B List : ", aList.pop(2);

以上实例输出结果如下:

A List :  abc
B List :  zara


(七)Python List remove()方法

1、描述

remove() 函数用于移除列表中某个值的第一个匹配项。

2、语法

remove()方法语法:

list.remove(obj)

3、参数

obj -- 列表中要移除的对象。

4、返回值

该方法没有返回值但是会移除两种中的某个值的第一个匹配项。

5、实例

以下实例展示了 remove()函数的使用方法:

#!/usr/bin/python

aList = [123, 'xyz', 'zara', 'abc', 'xyz'];

aList.remove('xyz');
print "List : ", aList;
aList.remove('abc');
print "List : ", aList;

以上实例输出结果如下:

List :  [123, 'zara', 'abc', 'xyz']
List :  [123, 'zara', 'xyz']


(八)Python List reverse()方法

1、描述

reverse() 函数用于反向列表中元素。

2、语法

reverse()方法语法:

list.reverse()

3、参数
NA。

4、返回值

该方法没有返回值,但是会对列表的元素进行反向排序。

5、实例

以下实例展示了 reverse()函数的使用方法:

#!/usr/bin/python

aList = [123, 'xyz', 'zara', 'abc', 'xyz'];

aList.reverse();
print "List : ", aList;

以上实例输出结果如下:

List :  ['xyz', 'abc', 'zara', 'xyz', 123]


(九)Python List sort()方法

1、描述

sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。

2、语法

sort()方法语法:

list.sort([func])

3、参数

func -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序。

4、返回值

该方法没有返回值,但是会对列表的对象进行排序。

5、实例

以下实例展示了 sort()函数的使用方法:

#!/usr/bin/python

aList = [123, 'xyz', 'zara', 'abc', 'xyz'];

aList.sort();
print "List : ", aList;

以上实例输出结果如下:

List :  [123, 'abc', 'xyz', 'xyz', 'zara']


抱歉!评论已关闭.