列表:
逗号分隔的不同的数据使用方括号括起来.
列表是可修改的 可以对列表进行修改,检查,增加,删除
可以用索引对列表进行直接修改 # 说白了就是赋值
l = ['a', 2013, '我']
l[1] = 2014
print(l)
列表可以拼接,重复*4,都是列表中元素的拼接和重复,in or not in,for循环
列表的嵌套
a =['a', 'b', 'c', 'd', 'e']
b = [1, 2, 3, 4]
l = [a, b] # **** 创建嵌套列表
l2 = l[0]
l3 = l[0][2] # 看准数据类型,对应使用方法处理问题
print(l)
print(l2)
print(l3)
L = ['muyi', 1, 2, ['abc', 4, 5], (1, 2, 'hello'), True]
L[0] = L[0].upper()
print(L)
L[3].remove('abc')
print(L)
列表方法:
增
*.append() 在列表末尾添加对象
*.insert() 在指定位置插入对象
—> .insert(索引位置,arg)
L = ['MUyi', 1, 2, ['abc', 4, 5], (1, 2, 'hello'), True]
L.insert(3, (1, 2, 3))
print(L)
*.extend()列表末尾一次性追加另一个序列中的多个元素
类似于迭代添加,因此()里得是可迭代对象。
L = ['MUyi', 1, 2, ['abc', 4, 5], (1, 2, 'hello'), True]
L.extend('abc木易')
print(L)
L.extend([1, 2, 3])
print(L)
L.extend((1, 2, 3))
print(L)
删
.pop() 删除列表中的元素,默认是最后一个元素,按索引位置删除,
有返回值,就是删除的值
.remove() 移除列表中某个值的第一个匹配项,也可以删除指定值,按值删除
.clear() 清空列表中的元素 == del a[:]
返回一个空列表[]
del语句
按照索引
或切片删除
del L 删除列表
L = ['MUyi', 1, 2, ['abc', 4, 5], (1, 2, 'hello'), True, 2 , 3]
del L[4]
print(L)
del L[1:6:2]
print(L)
改
按索引修改
或切片修改 # 先删除然后迭代添加
L = ['MUyi', 1, 2, ['abc', 4, 5], (1, 2, 'hello'), True]
L[2:4] = [1, 2, 3]
print(L)
查
按索引,切片查
for循环遍历索引查 range(),遍历元素查
while循环:索引查
列表函数
len() 列表长度,元素个数
max()返回最大值max函数元素
L = ['baidu', 'tence', 'apple']
print(max(L))
min()函数
list()函数 将字符串,元组转为列表
l1 = 'asdfas das'
print(list(l1))
l2 = ('sd', 123, 'wewr')
print(list(l2))
其他方法:
**.index()检索指定元素,并返回第一个匹配的索引值
反之,抛出异常。
.count() 计算列表中某个元素出现的次数
*不可以加切片**,具体参阅源码。
count(self, value)
.reverse()对列表进行反转,不是反向排序,如果想获取倒序数列,可以先排序再反转或者
**.sort(reverse=True)具体参考源码文档
**.sort()列表排序:正向排序
字符串反向排序[::-1]
元组:只读列表(不可增,删,改,只能查)
在括号中添加元素,并使用逗号隔开。
元组中只有一个元素时,需在元素后面加,不加类型是元素是什么类型就是什么类型。
元组不能修改,可以通过索引,切片来访问元组中的元素。但是可以拼接,重复,in or not in 就像字符串一样
用del语句删除整个元组
tuple(seq)将列表转换为元组。
补充知识:
*****range()
range()函数 范围:常用来表示数字序列
—-> range(start,end)
起始值不写默认为0,如range(101)
常用用法如下代码:
输出1~8
for x in range(1, 9):
print(x)
加步长,输出1,3,5,7
for x in range(1, 9, 2):
print(x)
加步长,反向输出4,2
for x in range(6, 1, -2):
print(x)
ps:列表在循环中不要轻易进行删除添加等操作,因为列表是可变的。
执行的操作会改变列表的长度,索引。如果要进行操作可以copy一个副本。