《Python编程:从入门到实践》学习打卡3-操作列表+元组
2020-07-18 04:48
399 查看
操作列表
遍历列表
方法:for循环,
magicians = ['david','hart','jerry','kurt'] for magician in magicians: # 在列表magicians按顺序读取元素赋值给变量magician print(magician) print(magician.title() + ',that is a great trick\n')
david David,that is a great trick hart Hart,that is a great trick jerry Jerry,that is a great trick kurt Kurt,that is a great trick
代码缩进
-
忘记缩进
magicians = ['david','hart','jerry','kurt'] for magician in magicians: print(magician) # for语句中执行语句没有缩进,系统报错
-
没有缩进所有的执行语句
magicians = ['david','hart','jerry','kurt'] for magician in magicians: print(magician) print(magician.title() + ',that is a great trick\n') # 逻辑错误,只会在最后一行打印该语句
-
不必要的缩进
magicians = ['david','hart','jerry','kurt'] for magician in magicians: print(magician) print('thanks all the magicians') #此句应该在最后单独打印,但多余缩进每次都会打印该句
-
丢失冒号
magicians = ['david','hart','jerry','kurt'] for magician in magicians # 丢失冒号,系统报错 print(magician)
-
总结:单独执行的语句不需要缩进,在语句块内需要执行的语句要缩进,语句块内结构缺一不可,如for循环内不可缺失冒号
课后习题
4-1披萨
pizzas = ['beef','tomato','cheese'] for pizza in pizzas: print(pizza)
pizzas = ['beef','tomato','cheese'] for pizza in pizzas:py print('I like ' + pizza + ' pizza')
pizzas = ['beef','tomato','cheese'] for pizza in pizzas: print('I like ' + pizza + ' pizza') print('\n' + pizzas[0] + ' pizza is my favorite pizza') print(pizzas[1] + ' pizza is sour') print(pizzas[2] + ' pizza is sweet') print('I really like pizza')
4-2动物
animals = ['dog','cat','rabbit'] for animal in animals: print(animal)
animals = ['dog','cat','rabbit'] features = ['kind','cute','furry'] i = 0 for animal in animals: print('A ' + animal + ' would make a ' + features[i] + ' pet.') i = i + 1 # 循环一次,feature索引加一
animals = ['dog','cat','rabbit'] features = ['kind','cute','furry'] i = 0 for animal in animals: print('A ' + animal + ' would make a ' + features[i] + ' pet.') i = i + 1 print('Any of these animals would make a great pet!')
创建数值列表
range函数
形式:range(m,n,s),m,n分别表示起点和终点,s表示步长,默认为1
作用:生成一系列数字
for i in range(1,5): print(i) # 1 2 3 4 # 从第一个数开始打印,到达最后一个值时停止,因此只能打印到4
利用range函数创建列表,并对列表进行操作
square = [] # 创建空列表 for i in range(1,11,2): # 取其中的1,3,5,7,9 square.append(i**2) #每个数平方后添加到列表中 print(square) # [1,9,25,49,81] #
简单统计计算
num = [2,3,4,5,56,7,8] print(min(num)) # 最小值:2 # print(max(num)) # 最大值:56 # print(sum(num)) # 和:85 #
列表解析(简化代码)
含义:将for循环和创建新元素的操作合并在一行代码
square = [value**2 for value in range(1,11,2)] print(square) # 直接生成[1.9,25,49,81]
课后习题
4-3数到20
for i in range(1,21): print(i) # 打印1-20数字
4-4一百万
num = list(range(1,1000001)) for i in num: print(i)
4-5计算1-1000000的总和
num = list(range(1,1000001)) print(max(num)) print(min(num)) print(sum(num))
4-6奇数
num = list(range(1,21,2)) for i in num: print(i)
4-7三的倍数
num = list(range(3,31,3)) for i in num: print(i)
4-8立方
square = [] # 建立空列表 for i in range(1,11): square.append(i**3) for s in square: print(s)
4-9立方解析
square = [value**3 for value in range(1,11)] print(square)
使用列表的一部分
切片操作(参照索引标号规则)
num = ['a','b','c','d','e'] print(num[0,3]) # ['a','b','c'] 如同索引一般,只能够到达终点前一个值 # print(num[:4]) # ['a','b','c','d'] 从列表头开始,到终点的前一个值 # print(num[1:]) # ['b','c','d','e'] 从起点开始,到列表最后一个值 # print(num[-3:]) # ['c','d','e'] 从倒数第三个到最后一个值 #
复制列表
num = ['a','b','c','d','e'] new_num = num[:] # 创建列表的副本关联到变量new_num中 num.append('r') print(num) # ['a','b','c','d','e','r'] # new_num.append('s') print(new_num) # ['a,'b','c','d','e','s'] 两个列表不是一个列表# new_num1 = num # 这种赋值是将两个变量名同时关联到一个列表,还是一个列表 num.append('r') print(num) # ['a','b','c','d','e','r'] # print(new_num) # ['a','b','c','d','e','r'] #
总结:复制列表时应该用且切片创建一个副本,也就是一个新的列表,而不是创建一个新的变量与原来的变量关联到同一个列表
课后习题
4-10切片
num = ['a','b','c','d','e'] print(num[:3]) # 打印前三个元素 # print(num[1:3]) #打印中间三个数字 # print(num[-3:]) #打印末尾三个元素 #
4-11你的披萨和我的披萨
pizzas = ['beef','tomato','cheese'] friend_pizzas = pizzas[:] # 创建副本 pizzas.append('beacon') #原列表加入新元素 friend_pizzas.append('chicken') # 副本列表加入新元素 print('my favorite pizzas are:') for pizza in pizzas: print(pizza) print('my friend favorite pizzas are:') for friend_pizza in friend_pizzas: print(friend_pizza)
4-12使用多个循环
my_foods = ['pizza','falafel','carrot cake'] friends_foods = my_foods[:] for my_food in my_foods: print(my_food) for friend_food in friend_foods: print(friend_food)
元组
定义
-
不可变的列表称之为元组(tuple),用圆括号非方括号包括元素,如(1,2,3,4)
-
元素的访问方法与列表一致,列表名称[index]
-
元素的遍历和列表一致
-
不可修改元组中元素的值,但可以修改元组变量,相当于给变量重新赋值
dims = (1,2) for dim in dims: print(dim) dims = (3,4) # 给原元组变量赋值 for dim in dims: print(dim)
课后习题
4-13自助餐
foods = ('apple','grapes','banana','tomato','rice') for food in foods: print(food) foods[2] = 'cheese' # 尝试改变元组中的值 foods = ('apple','grapes','banana','chicken','beacon') # 改变两种食品,重新赋值 for food in foods: print(food)
小白入门python,如有错误,欢迎指出与探讨
相关文章推荐
- 【day 2】python编程:从入门到实践学习笔记-列表以及其操作
- 《Python编程从入门到实践》_第四章_操作列表
- 《Python编程:从入门到实践》学习打卡6-字典
- Python中操作列表--《Python编程从入门到实践》
- Python编程:从入门到实践读书笔记-4 操作列表
- 《Python编程:从入门到实践》学习打卡5-if语句后续
- 【《Python编程: 从入门到实践》习题答案--第四章:<list 列表操作>】
- 《Python编程:从入门到实践》学习打卡4-if语句
- 【Python编程:从入门到实践】第四章:操作列表
- 《Python编程从入门到实践》_第四章_操作列表
- 《Python编程:从入门到实践》学习打卡18-数据可视化(一)
- 《Python编程:从入门到实践》学习打卡17-测试代码(下)
- 《Python编程:从入门到实践》学习打卡16-测试代码(上)
- 《Python编程:从入门到实践》学习打卡15-存储数据
- 第四天任务 (【基于Python编程从入门到实践】第四章 操作列表前四节 书本及动手试一试)
- 《Python编程:从入门到实践》学习打卡13-文件和异常
- 《Python编程:从入门到实践》学习打卡12-继承
- 《Python编程:从入门到实践》学习打卡11-类的导入
- 《Python编程:从入门到实践》学习笔记(2 :列表及其操作)
- 《Python编程:从入门到实践》学习打卡10-类和实例的处理