- 列表是python中容器型数据类型;将[ ]中括号作为容器的标准,里面多个数据用逗号隔开:[数据1,数据2,数据3,···]
score=[98,34,89,99,56,100,91,70] list1 = ['Google', 'Runoob', 1997, 2000] list3 = ["a", "b", "c", "d"]
- 列表是可变的(元素的个数、元素的值和顺序都可以改变 — 支持增、删、改);列表是有序的(支持下标操作)
补充:
元素 — 容器中每个独立的数据就是这个容器中的每个元素
len (list) — 获取列表中元素的个数2、空列表:
1、空列表样子
list1=[ ] print(type(list1),len(list1)) #0
2、任何类型的数据都可以是列表的元素;同一个列表中的元素的类型可以不相同
list2 = [100] list3 = [98,34,89,99,56,100,91,70] list4 = ["小明",18,False,78.9] list 6= [10,[20,30]]3、查 — 获取元素
- 查单个列表中的元素
——获取列表中的一个元素
# 1)语法 # 列表[下标] list[下标]
"""
2)说明:
列表 — 任何结果是列表的表达式,一般是保存列表的变量或者具体某一个列表
[] — 固定写法
下标 — 下标又叫索引
列表中的每个元素都有两个下标值分别是:
从前往后数 从0开始不断增加的下标值
从后往前数 前从-1 开始不断减小的下标值
注意: 类别的下标不能超过边界
"""
- 遍历 — 一个一个的将列表中的元素全部取一遍
"""
方法1:
for 元素 in 列表:
循环体
"""
mocvies=["小树林","复联3","肖申克救赎","蜘蛛侠","忍者神龟","泰坦尼克号","阿凡达"]
for i in mocvies:
print("i",i)
小树林
复联3
肖申克救赎
蜘蛛侠
忍者神龟
泰坦尼克号
阿凡达
方法2 — 通过遍历下标来遍历列表
for 下标 in range(len(列表)):
循环体
nums = [10, 20, 30, 40, 50, 60, 70, 80, 90]
for i in range(-1,-len(nums)-1,-1):
print(i,nums[i])
# -1 90 -2 80 -3 70 -4 60 -5 50 -6 40 -7 30 -8 20 -9 10
- 方法3: for index,item in enumerate(列表):
for 下标,元素 in enumerate(list): for index,item in enumerate(list):
# 案列
mocvies=["小树林","复联3","肖申克救赎","蜘蛛侠","忍者神龟","泰坦尼克号","阿凡达"]
for i in range(len(mocvies)):
print(i,mocvies[i],end='t')
for index,item in enumerate(mocvies):
print(index,item,end='t')
0 小树林 1 复联3 2 肖申克救赎 3 蜘蛛侠 4 忍者神龟 5 泰坦尼克号 6 阿凡达
0 小树林 1 复联3 2 肖申克救赎 3 蜘蛛侠 4 忍者神龟 5 泰坦尼克号 6 阿凡达
- 切片 — 获取部分元素
""" 1)完整的语法 列表[开始下标:结束下标:步长] """ """ 2)开始下标、结束下标 — 用来确定切片的有效范围 3)步长 — 确定获取的方式 1、正负决定是从前往后取,还是从后往前取 2、决定值大小决定是一个一个取还是跳着取 """1、怎么看切片的结果
1、第一步:先确定结果是否为空(看 从开始下标到结束下标对应的方向和步长对应的方向 是否一致,如果不一致,直接结果为[]
2、第二部:确定有效范围(开始下标对应的元素能取到,结束下标对应的元素娶不到)
3、第三步:根据步长在有效范围内获取元素
绝对值为1:一个一个取
绝对值为2:取1个跳1个再取1个~
绝对值为3:取1个跳2个再取1个~
第一步:确定开始下标(将目标数据中的第一个元素对应的下标作为开始下标)
第二部:确定步长(根据方向确定正负;根据取得时候跳过的方式确定绝对值)
第三步:确定结束下标(如果步长为正,结束下标是最后的一个元素后面的那个元素的下标;如果步长为负,结束下标是取到的最后的一个元素前面的那个元素的下标)
mocvies=["小树林","复联3","肖申克救赎","蜘蛛侠","忍者神龟","泰坦尼克号","阿凡达"] print(mocvies[2:5:1]) print(mocvies[1:6:2]) print(mocvies[-2:-7:-2]) ['肖申克救赎', '蜘蛛侠', '忍者神龟'] ['复联3', '蜘蛛侠', '泰坦尼克号'] ['泰坦尼克号', '蜘蛛侠', '复联3']3、省略语法
# 列表[开始下标:结束下标:步长]
1)省略步长:
列表[开始下标:结束下标] — 相当于步长为 1 mocvies=["小树林","复联3","肖申克救赎","蜘蛛侠","忍者神龟","泰坦尼克号","阿凡达"] print(mocvies[2:5]) # ['肖申克救赎', '蜘蛛侠', '忍者神龟']
2)省略开始下标:
列表[ : 结束下标:步长] — 表示从头开始
(头有可能是第一个元素,也有可能是最后一个元素)
mocvies=["小树林","复联3","肖申克救赎","蜘蛛侠","忍者神龟","泰坦尼克号","阿凡达"] print(mocvies[:-2]) # ['小树林', '复联3', '肖申克救赎', '蜘蛛侠', '忍者神龟']
3)省略结束下标:
列表[开始下标::步长】
mocvies=["小树林","复联3","肖申克救赎","蜘蛛侠","忍者神龟","泰坦尼克号","阿凡达"] print(mocvies[::1]) print(mocvies[::-1]) ['小树林', '复联3', '肖申克救赎', '蜘蛛侠', '忍者神龟', '泰坦尼克号', '阿凡达'] ['阿凡达', '泰坦尼克号', '忍者神龟', '蜘蛛侠', '肖申克救赎', '复联3', '小树林']4、增 — 添加元素 1、列表.append(元素)— 在指定的列表的最后添加指定的元素
list1=[10,20]
list1.append(100) # list1.append() 用法
print(list1)
scores = [98,34,89,99,54,100,91,70]
new_scores=[]
for i in scores:
if i < 60:
new_scores.append(i)
print(new_scores)
2、列表.insert(下标,元素)
将指定元素插入到原列表指定下标对应的元素前~
nums=[10,50,100] nums.insert(1,60) #列表.insert(下标,元素) print(nums)5、删 — 元素 1)del 列表[ 下标 ]
nums=[10,50,100] del nums[0] # del 列表[ 下标 ] print(nums)2) 列表.remove (元素) —删除指定元素(如果对应的元素有多个,只删排最前面的那一个;如果元素不存在会报错)
nums=[10,50,100,50,20] nums.remove(50) # 列表.remove (元素) —删除指定元素 print(nums) [10, 100, 50, 20]3)列表.pop()— 取出列表中最后一个元素
# 列表.pop(下标) # 取出列表中指定下标的元素
# 案例: nums=[10,50,100,50,20] i=nums.pop(-3) print(nums) print(i) [10, 50, 50, 20] 1006、改 — 修改某个元素的值
# 列表[下标]=值 #——将指定下标的对应元素修改成指定的值
nums=[10,50,100,50,20] nums[2]=1000000 print(nums) [10, 50, 1000000, 50, 20] `python # 列表.pop(下标) # 取出列表中指定下标的元素
# 案例: nums=[10,50,100,50,20] i=nums.pop(-3) print(nums) print(i) [10, 50, 50, 20] 1006、改 — 修改某个元素的值
# 列表[下标]=值 #——将指定下标的对应元素修改成指定的值
nums=[10,50,100,50,20] nums[2]=1000000 print(nums) [10, 50, 1000000, 50, 20]



