1、遍历整个列表
操作1:使用for循环
cars=["bmw","audi","toyoto","subaru"]
for car in cars:
print(car,end=" ")
输出
bmw audi toyoto subaru
for循环:这行代码让python从列表cars中取出一个元素,并且存储在变量car中。最后,让python打印前面存储到变量car中的元素。python重复执行下面的for,直到cars最后一个元素。
for car in cars:
print(car,end=" ")
解释这个程序for循环:第一次for,拿到cars[1]的bmw,并且存在car中,然后执行print,输出bmw,之后重新回去for,继续上面步骤。。。直到cars的值全部循环结束。执行下一行代码。(这样解释希望能通俗易懂),这种for循环执行速度通常很快
1)、循环前操作
2)、循环中操作:有缩进的程序
3)、循环后操作:没缩进的程序
操作2:缩进
操作3:创建数字列表
1)range(num1,num2,步长)
squares=[]
for value in range(0,11,2):
squares.append(value**2)
print(squares)
print(list(range(2,5)))
结果:
[0, 4, 16, 36, 64, 100]
[2, 3, 4]
2)一些函数
min() max() sum()
list=[0, 4, 16, 36, 64, 100,-3,300,200]
print(min(list))
3)列表解析
列表解析是让for循环和创建新元素的代码合成一行,并且自动附加新元素
格式:
列表名=[表达式 for循环]
其中:表达式是要存储在列表中的值
squares = [value**2 for value in range(1,5)]
print(squares)
输出
[1, 4, 9, 16]
操作4:使用列表部分元素(切片)
1)切片
cars=["bmw","audi","toyoto","subaru"]
#切片基本使用,输出2、3
print(cars[1:3])
#输出全部
print(cars[:])
#输出2到最后
print(cars[1:])
#输出1到倒数第二
print(cars[:3])
#输出倒数第三到最后一个
print(cars[-3:])
#输出倒数第三到倒数第二
print(cars[-3:-1])
#复制的使用----复制正确做法
car_copy=cars[:]
cars.append("honta")
print("原本",cars)
car_copy.append("mini")
print("副本",car_copy)
#直接赋值---这里是赋值而非复制
car_copy=cars
cars.append("uuu")
car_copy.append("ddd")
print("car_copy",car_copy)
print("cars",cars)
结果:
['audi', 'toyoto']
['bmw', 'audi', 'toyoto', 'subaru']
['audi', 'toyoto', 'subaru']
['bmw', 'audi', 'toyoto']
['audi', 'toyoto', 'subaru']
['audi', 'toyoto']
原本 ['bmw', 'audi', 'toyoto', 'subaru', 'honta']
副本 ['bmw', 'audi', 'toyoto', 'subaru', 'mini']
car_copy ['bmw', 'audi', 'toyoto', 'subaru', 'honta', 'uuu', 'ddd']
cars ['bmw', 'audi', 'toyoto', 'subaru', 'honta', 'uuu', 'ddd']
操作5:元组:也可以称作不可变的列表
cars=("bmw","audi","toyoto","subaru")
cars.append("mini")
print(cars)
报错:
cars.append("mini")
AttributeError: 'tuple' object has no attribute 'append'
#不能修改元素的值,但是可以修改元组的值
cars=("mini","audi")
print(cars)