Python列表
Python中最基本的数据结构是 sequence 。序列的每个元素都分配有一个数字-其位置或索引。第一个索引为零,第二个索引为1,依此类推。
Python有六种内置的序列类型,但是最常见的是列表和元组,我们将在本教程中看到它们。
你可以对所有序列类型执行某些操作。这些操作包括索引,切片,加,乘和检查成员资格。另外,Python具有内置函数,用于查找序列的长度以及查找其最大和最小元素。
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]
Note :append()方法将在后续部分中讨论。
执行以上代码后,将产生以下结果:
Value available at index 2 : 1997 New value available at index 2 : 2001
删除列表元素
要删除列表元素,可以使用del语句(如果你确切知道要删除的元素)或使用remove()方法(如果你不知道)。例如:
#!/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]
Note :remove()方法将在后续部分中讨论。
基本清单操作
列表对+和*运算符的响应非常类似于字符串;它们在这里也意味着串联和重复,只是结果是一个新列表,而不是字符串。
实际上,列表响应了我们在上一章中对字符串使用的所有常规序列操作。
Python表达式 | Results | 描述 |
---|---|---|
len([1,2,3]) | 3 | Length |
[1、2、3] + [4、5、6] | [1、2、3、4、5、6] | 级联 |
['嗨!'] * 4 | [“嗨!”,“嗨!”,“嗨!”,“嗨!”] | 重复 |
3 in [1,2,3] | True | 会员资格 |
对于[1、2、3]中的x:打印x, | 1 2 3 | 迭代 |
索引,切片和矩阵
由于列表是序列,因此索引和切片对列表的工作方式与对字符串的工作方式相同。
假设以下输入:
L = ['spam', 'Spam', 'SPAM!']
Python表达式 | Results | 描述 |
---|---|---|
L[2] | SPAM! | 偏移量从零开始 |
L[-2] | Spam | 负数:从右边数 |
L[1:] | [“垃圾邮件”,“垃圾邮件!”] | 切片获取部分 |
内置列表功能和方法
Python包含以下列表函数:
序号 | 功能说明 |
---|---|
1 |
cmp(列表1,列表2)
比较两个列表的元素。 |
2 |
len(清单)
给出列表的总长度。 |
3 |
最大(清单)
从列表中返回具有最大值的项目。 |
4 |
分钟(列表)
从列表中返回带有最小值的项目。 |
5 |
清单(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()
反转列表中的对象 |
9 |
list.sort([func])
对列表中的对象进行排序,如果给定,则使用compare func |