上一章Python教程请查看:python字符串类型用法及其操作函数
Python中最基本的数据结构是序列,序列的每个元素都被分配一个数字——它的位置或索引,第一个指标是0,第二个指标是1,以此类推。
Python有六种内置的序列类型,但最常见的是列表和元组,我们将在本教程中看到。
对于所有的序列类型,都可以做一些特定的事情。这些操作包括索引、切片、添加、相乘和检查成员资格,此外Python还提供了一些内置函数,用于查找序列的长度以及查找最大和最小的元素。
1、Python列表list
该列表是Python中最通用的数据类型,它可以写成方括号之间逗号分隔值(项)的列表,于列表重要的一点是列表中的项不必具有相同的类型。
创建列表非常简单,只需在方括号中放置不同的逗号分隔值即可。
list1 = ['physics', 'chemistry', 200, 600];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"]
与字符串索引类似,列表索引从0开始,列表可以被分割、连接等等。
2、访问列表中的值
要访问列表中的值,请使用方括号与索引一起切片,以获得该索引处可用的值。
#!/usr/bin/python
list1 = ['physics', 'chemistry', 200, 600];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
3、更新列表
你可以通过赋值操作符左侧的切片来更新列表中的单个或多个元素,还可以使用append()方法向列表中的元素添加元素。
#!/usr/bin/python
list = ['physics', 'chemistry', 200, 600];
print "在索引2中的值 : "
print list[2]
list[2] = 2001;
print "在索引2中新的值 : "
print list[2]
4、删除列表元素
要删除列表元素,可以使用del语句(如果你确切地知道要删除的是哪个元素),也可以使用remove()方法(如果你不知道)。
#!/usr/bin/python
list1 = ['physics', 'chemistry', 200, 600];
print list1
del list1[2];
print "在删除索引2处的值之后 : "
print list1
5、基本的列表操作
列表对+和*操作符的响应非常类似于字符串,它们在这里也表示连接和重复,只不过结果是一个新列表,而不是字符串。
事实上列表响应我们在前一章中对字符串使用的所有常规序列操作。
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 | 遍历 |
6、索引、切片和矩阵
因为列表是序列,所以对列表执行索引和切片的方式与对字符串执行索引和切片的方式相同。
L = ['spam', 'Spam', 'SPAM!']
Python表达式 | 结果 | 描述 |
L[2] | SPAM! | 偏移量从零开始 |
L[-2] | Spam | 负数:从右边数 |
L[1:] | [‘Spam’, ‘SPAM!’] | 切取部分 |
7、内置的列表函数和方法
Python包含以下列表函数
编号 | 函数 和 说明 |
1 | cmp(list1, list2) 比较两个列表的元素。 |
2 | len(list) 给出列表的总长度。 |
3 | max(list) 从列表中返回带有最大值的项。 |
4 | min(list) 从列表中返回具有最小值的项。 |
5 | list(seq) 将元组转换为列表。 |
Python包括以下列表方法
编号 | 方法和描述 |
1 | list.append(obj) 将对象obj附加到列表中 |
2 | list.count(obj) 返回计数在列表中出现obj的次数 |
3 | list.extend(seq) 将seq的内容附加到列表中 |
4 | list.index(obj) 返回obj出现的列表中最低的索引 |
5 | list.insert(index, obj) 在偏移索引处将对象obj插入到列表中 |
6 | list.pop(obj=list[-1]) 从列表中删除并返回最后一个对象或obj |
7 | list.remove(obj) 从列表中删除对象obj |
8 | list.reverse() 在适当的位置反转list对象 |
9 | list.sort([func]) 对列表中的对象进行排序,如果给定,使用比较函数 |
评论前必须登录!
注册