发布于 2015-06-21 10:37:33 | 366 次阅读 | 评论: 0 | 来源: 网络整理
Python最基本的数据结构是序列(列表/元组)。一个序列中的每个元素都分配有一个数字- 它的位置或索引。第一个索引是0,第二个索引是1,依此类推。
Python有6内置类型的序列,但最常见的是列表和元组,我们将在本教程中看到。
有一些东西可以使用所有序列类型来做。这些操作包括索引,切片,加,乘,并检查成员。此外,Python已经内置函数查找序列的长度和搜索它的最大和最小的元素。
列表是最通用的数据类型,在Python可以写成逗号分隔值方括号(项目)列表。有关列表是在一个列表中的项不一定是同个数据类型。
创建一个列表很简单,只要把squere括号之间不同的逗号分隔值。例如:
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语句,如果知道哪些元素要删除;或如果你不知道那么使用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]
注:remove()方法在以后的章节中讨论。
列出了 + 和 * 运算符就像字符串; 串联和重复字符串在这里也一样,不同的是,结果是一个新的列表,而不是一个字符串。
事实上,列表响应所有我们使用在字符串的一般操作顺序。
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 | 迭代 |
因为列表序列,索引和切片的工作方式与他们对字符串操作类似。
假设下面输入:
L = ['spam', 'Spam', 'SPAM!']
Python 表达式 | 结果 | 描述 |
---|---|---|
L[2] | 'SPAM!' | 偏移从零开始 |
L[-2] | 'Spam' | 负值:计数从右边 |
L[1:] | ['Spam', 'SPAM!'] | 切取部分 |
Python中包括下面的列表函数功能:
SN | 函数及描述 |
---|---|
1 | cmp(list1, list2) 比较两个列表的元素 |
2 | len(list) 给出列表的总长度 |
3 | max(list) 从列表中,项目的最大值 |
4 | min(list) 从列表中,项目的最小值 |
5 | list(seq) 一个元组到列表的转换 |
Python中包括下面的列表的方法
SN | 方法及描述 |
---|---|
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]) 排序列表中的对象,使用func比较(如果给定) |