Python序列的概念及列表(List)理解
序列sequence是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
序列概念
Python有6个序列的内置类型,但最常见的是列表和元组,除了刚刚有说过的两种类型之外,还有字符串、Unicode字符串、buffer对像和最后一种xrange对像,这几种都是不常使用的。
序列通用操作方法
序列都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型
序列的基本操作方法
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:
list1 = [‘Google’, ‘Runoob’, 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = [“a”, “b”, “c”, “d”];
与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。
1.访问列表中的值
什么是索引: 序列中的每一个元素都有自己的位置编号,可以通过偏移量索引来读取数据。最开始的第一个元素,索引为0,第二个元素,索引为1,以此类推;也可以从最后一个元素开始计数,最后一个元素的索引是-1,倒数第二个元素的索引就是-2,以此类推。
源代码:
list1 = [‘Google’, ‘Runoob’, 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print ("list1[0]: ", list1[0])
#需要注意的是,第一个索引为0,输出第一个元素
print ("list1[-3]: ", list1[-3])
#需要注意的是,从最后一个元素开始计数,最后一个元素的索引是-1
print ("list2[1:5]: ", list2[1:5])
#输出多个元素,选择索引第二个到第五个的元素
什么是切片: 切片简单的来说就是取出一个范围内的元素。
切片源代码:
x = ‘www.python.com’
print(x[4:-4])
序列相加: 相同数据类型序列之间可以相加,不同数据类型序列不能相加。
序列相加源代码:
#列表类型序列相加
a = [1,2]
b = [3,4]
print(a+b)
#字符串类型序列相加
a = ‘hello’
b = ‘.python’
print(a+b)
#元组类型序列相加
a = (1,2,3)
b = (4,5,6)
print(a+b)
#两种不同数据类型的序列相加,会引发错误异常
a = [1,2]
b = ‘hello’
print(a+b)
序列乘法: 把原序列乘X次,并生成一个新的序列
成员资格: 检查某个指定的值是否在序列中,用in布尔运算符来检查,其返回值为True/False。True为真,在这里可以理解为要查找的值在序列中,False结果与其相反。
序列内建函数: len()函数计算序列内元素数量;min()函数、max()函数分别查找并返回序列中的最大或最小元素。
在操作一组数据时,序列是很好用的数据结构。列表、元组和字符串这几种数据类型是比较常接触到的序列。除了以上讲的序列基本操作方法之外,还有一个比较重要的序列迭代。
2.更新列表的值:
你可以对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项,如下所示:
源代码:
list = [‘Google’, ‘Runoob’, 1997, 2000]
print ("第三个元素为 : ", list[2])
list[2] = 2001
print ("更新后的第三个元素为 : ", list[2])
源代码:
A = [‘1’,‘2’,‘3’]
A.append(‘4’)
print(A)
3.删除列表元素的值:
可以使用 del 语句来删除列表的的元素,你也可以使用remove()方法来添加列表项,如下实例:
源代码:
list = [‘Google’, ‘Runoob’, 1997, 2000]
print ("原始列表 : ", list)
del list[2]
print ("删除第三个元素 : ", list)
源代码:
A = [‘1’,‘2’,‘3’]
A.remove(‘2’)
print(A)