索引 | -7 | -6 | -5 | -4 | -3 | -2 | -1 |
---|---|---|---|---|---|---|---|
数据 | “aaa” | “222” | 33 | “haha” | 3.14 | “hello” | “world” |
索引 | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
切片操作:列表名[start:stop:step]
切片结果是原列表片段的拷贝。
step默认为1,可以简写为列表名[start:stop]
[:stop:step]
:切片的第一个元素默认是列表的第一个元素[start::step]
:切片的最后一个元素默认是列表的最后一个元素[:stop:step]
:切片的第一个元素默认是列表的最后一个元素[start::step]
:切片的最后一个元素默认是列表的第一个方法/其它 | 操作描述 |
---|---|
append() | 在列表的末尾添加一个元素 |
extend() | 在列表的末尾至少添加一个元素 |
insert() | 在列表的任意位置添加一个元素 |
切片 | 在列表的任意位置添加至少一个元素 |
方法/其它 | 操作描述 |
---|---|
remove() | 一次删除一个元素;重复元素只删除第一个;元素不存在抛出ValueError |
pop() | 删除一个指定索引位置上的元素;指定索引不存在抛出IndexError;不指定索引,删除列表中最后一个元素 |
切片 | 一次至少删除一个元素 |
claer() | 清空列表 |
del | 删除列表 |
只是修改单个元素的话,和C语言基本一样
lst=[1,2,3,4]
print(lst)#[1, 2, 3, 4]
#修改2为200
lst[1]=200
print(lst)#[1, 200, 3, 4]
修改一个切片的话
lst = [1, 2, 3, 4]
print(lst) # [1, 2, 3, 4]
# 修改2,3为200
lst[1:3] = [200]
print(lst) # [1, 200, 4]
# 将200,4修改为6,7,8,9
lst[1:4] = [6, 7, 8, 9]
print(lst) # [1, 6, 7, 8, 9]
lst = [5, 6, 3, 34, 76, 23, 76]
print('原列表:', lst, id(lst))
lst.sort() # 升序 也可以 lst.sort(reverse=False)
print('升序:', lst, id(lst))
lst.sort(reverse=True) # 降序
print('降序:', lst, id(lst))
lst = [5, 6, 3, 34, 76, 23, 76]
print('原列表:', lst)
new_lst = sorted(lst) # 也可以new_lst = sorted(lst, reverse=False)
print(lst)
print('升序', new_lst)
new_lst = sorted(lst, reverse=True)
print('降序', new_lst)
语法:
[i*i for i in range(num1,num2)]
lst = [i for i in range(1, 10)]
print(lst)# [1, 2, 3, 4, 5, 6, 7, 8, 9]
lst = [i*i for i in range(1, 10)]
print(lst)# [1, 4, 9, 16, 25, 36, 49, 64, 81]