一、列表的定义
序列是 Python 中最基本的数据结构。
序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推。
列表的数据项不需要具有相同的类型
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。
list1 = ['a', 'b', 1200, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
列表中可存储各种类型的数值,比如数值型,浮点数型,bool型,字符串型,空值,甚至可以存储列表,如图
l2 = [10, 3.14, "hello", False, None, l0]
print(l2, type(l2))
列表可将其中的内容分别打印出来
l3 = list()
print(l3, type(l3))
l4 = list("hello world")
print(l4, type(l4))
l5 = list(range(10))
print(l5, type(l5))
与字符串的索引一样,列表索引从 0 开始,第二个索引是 1,依此类推。
list1 = ['a', 'b', 1200, 2000]
print( list1[0] )
print( list1[1] )
print( list1[2] )
索引也可以从尾部开始,最后一个元素的索引为 -1,往前一位为 -2,以此类推。
list1 = ['a', 'b', 1200, 2000]
print( list1[-1] )
print( list1[-2] )
print( list1[-3] )
使用下标索引来访问列表中的值,使用方括号 [] 的形式截取字符
list1 = ['a', 'b', 1200, 2000]
print( list1[0:4] )
print( list1[0:2] )
print( list1[-4:] )
print( list1[-1:] )
二、列表的遍历
遍历使用两中常见的遍历方法
a = 10
f = 3.14
b = True
s = "hello"
n = None
# 直接获取元素 不关注索引
l6 = [a, f, b, s, n]
for e in l6:
print(e)
a = 10
f = 3.14
b = True
s = "hello"
n = None
for i in range(len(l6)):
print(i, l6[i])
三、列表的常见操作
列表可以组合
l1 = [1, 3, 5]
l2=[2,4,6,8]
l3=l1+l2
print(l3)
列表中的元素可以用运算符进行计算
l = [1, 3, 5]
l[0] *= 10
print(l)
l[1] /= 3
print(l)
.append在列表的末尾加入一个元素,
l = [1, 3, 5]
l.append(7)
print(l)
.insert将对象插入列表,在索引位置插入一个元素
l = [1, 3, 5]
l.insert(1, 2)
print(l)
.extend在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
l = [1, 3, 5]
l.extend(range(10))
print(l)
.count计算某一元素在列表中出现的次数
l = [1, 3, 5,1, 2, 3, 5, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(l.count(5))
.len列表元素个数
l = [1, 3, 5,1, 2, 3, 5, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(len(l))
.index从列表中找出某个值第一个匹配项的索引位置
l = [1, 3, 5,1, 2, 3, 5, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(l.index(5))
.pop移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
l = [1, 3, 5,1, 2, 3, 5, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
r = l.pop()
r5 =l.pop(3)
print(r,r5, l)
.remove移除列表中某个值的第一个匹配项
l = [1, 3, 5,]
l.remove(3)
print(l)
.reverse反向列表中元素
l = [1, 3, 5,]
l.reverse()
print(l)
.sort对原列表进行排序
l = [1, 3, 5,1, 2, 3, 5, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
l.sort()
print(l)
l.sort(reverse=True)
print(l)