5.3 Python 列表

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

Python有6内置类型的序列,但最常见的是列表和元组,我们将在本教程中看到。

有一些东西可以使用所有序列类型来做。这些操作包括索引,切片,加,乘,并检查成员。此外,Python已经内置函数查找序列的长度和搜索它的最大和最小的元素。

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函数及描述
1cmp(list1, list2)
比较两个列表的元素
2len(list)
给出列表的总长度
3max(list)
从列表中,项目的最大值
4min(list)
从列表中,项目的最小值
5list(seq)
一个元组到列表的转换

Python中包括下面的列表的方法

SN方法及描述
1list.append(obj)
添加obj对象到列表
2list.count(obj)
计算返回obj出现在列表的次数
3list.extend(seq)
附加序列seq内容到列表
4list.index(obj)
返回列表中出现obj的最小索引
5list.insert(index, obj)
插入obj对象在列表偏移索引位置
6list.pop(obj=list[-1])
移除并返回列表最后一个对象或obj
7list.remove(obj)
从列表中移除obj对象
8list.reverse()
反转列表的对象
9list.sort([func])
排序列表中的对象,使用func比较(如果给定)






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值