组织列表(包含循环)
循环——遍历整个列表
循环,让计算机自动完成重复工作的常见方式之一。
比如
magicians = ['alice', 'david', 'carolina']
#magician 作为与列表中的元素相关联的临时变量,
# 当然也可以是其他的变量名, 比如 i、j 等,不过这种变量不易被理解
for magician in magicians: #对于此处,只要列表中还有元素循环就不会终止
print(magician) #此处也可以使用f字符串,.title(), .upper()等操作
print(f"hello {magician}!")
magician.upper() #注意此处只是对临时变量操作斌没有影响到列表中的元素 ,这个应该通过索引来,不过需要计数器
#for循环管到又缩进的最下一行
#像下面这一行就不会被循环
print("hello")
print(magicians) #这个会反映了第七行并没有影响到列表本身

在for循环后没有缩进的代码只执行一次,所以要注意好缩进,
当然也不能忘记for循环后面的冒号,如果没有就会语法错误运行不了
创建数值列表
使用range方法
for value in range(1, 5): #这里只会取到4,并不会取到5
print(value)

如果使用range与预期不符合,尝试对范围进行加一或者减一
用range创建列表
numbers = list(range(1,5))
print(numbers)
#注意少了list 可能输出的是这样的
objects = range(1, 4)
print(objects)
#range 函数还可以指定步长
even_numbers = list(range(2, 11, 2)) # 从 2 开始数 步长为 2(也就是每次加 2 ), 数到 10
print(even_numbers)
#当然还可以与 for 循环配合 range
squares = [] # 创建空列表
for value in range(1, 4): # 1 ~ 3
value = value ** 2 # ** 表示平方
squares.append(value)
# 或者 使用 squares.append(values ** 2) 代替上面两行
print(squares)

对数据列表执行简单的统计运算
digits = [1, 100, -10, 2.2, 3, 1, 2]
print(min(digits)) # 求列表中的最小值
print(max(digits)) # 求最大值
print(sum(digits)) # 求列表中数的总和

列表解析——有点骚操作
squares = [value ** 2 for value in range(1, 5)]
# 使用这种方式创建的列表就跟简洁, 4 行变 1 行
print(squares)

切片
切片操作
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[1: 4]) # 打印第二个到第4个元素
# 上面这种方式 需要有冒号
# 不指定起始点,默认从开头开始
print(players[:2]) # 前两位
# 同样也可以不指定结尾, 默认从结尾开始
print(players[1:])
print(players [:])
# 当然可以使用负值索引
print(players[: -2])
print(players[-3:]) # 打印最后三个运动员

遍历切片
也就遍历部分列表
players = ['charles', 'martina', 'michael', 'florence', 'eli']
for player in players[ : 3]:
print(player)

复制列表
其实就是是使用没有首索引和尾索引的切片,切记等号是行不通的
my_favorite_foods = ['pizza', 'cake', 'apple']
friend1_favorite_foods = my_favorite_foods[:]
print(my_favorite_foods)
print(friend1_favorite_foods)
friend2_favorite_foods = my_favorite_foods
print(friend2_favorite_foods)
# 上面这种方式虽然输出没什么变化, 但是其实就是用另一个变量指向同一个地址
#用下面这种方式就可以检验出来
my_favorite_foods.append("ice icream")
print(friend2_favorite_foods)

元组
定位元组
元组是不可变的列表,强行修改元组的元素会报错
用圆括号来标识,但仍然使用方括号和索引访问
dimensions = (50, 200)
print(dimensions[0])

严格意义上元组是通过逗号标识,并没有圆括号
dimensions = 50, 200
print(dimensions[0])
# 如果元组只有一个元素时, 就一定需要圆括号来标识
my_list = (3, )
print(my_list[0])

修改元组元素的报错提示
dimensions = (50, 200)
dimensions[1] = 0

修改元组变量(注意不是元组中的元素)
dimensions = (50, 200)
for dimension in dimensions:
print(dimension)
print()
dimensions = (20, 90)
for dimension in dimensions:
print(dimension)

浙公网安备 33010602011771号