第7课 Python for循环语句 课件(共36张PPT) 电子工业出版社初中信息技术第二册

资源下载
  1. 二一教育资源

第7课 Python for循环语句 课件(共36张PPT) 电子工业出版社初中信息技术第二册

资源简介

(共36张PPT)
for 遍历循环
思考:如何输出“冰墩墩” 到屏幕上?
print("冰墩墩")
如何输出10遍“冰墩墩” 到屏幕上?
print("冰墩墩")
print("冰墩墩")
print("冰墩墩")
print("冰墩墩")
print("冰墩墩")
print("冰墩墩")
print("冰墩墩")
print("冰墩墩")
print("冰墩墩")
print("冰墩墩")
执行程序
(一)遍历数字
for i in [1,2,3,4,5,6,7,8,9,10]:
print("冰墩墩")
通过for循环语句把10行重复的代码变为2行
执行程序
for循环可以遍历列表[1,2,3,4,5,6,7,8,9,10]中的每一个元素,每遍历一次,输出一次“冰墩墩”
列表:是Python中常用的数据类型,它是用逗号把数据项分隔开来,并使用方括号括起来的数据类型。
例如: [32,33,28,30,27,33]
[1.58,1.83,1.71,1.65]
[“冰墩墩”, “雪容融”, “喜洋洋"]
遍历:把对象中的元素从头到尾访问一次。
遍历列表[1,2,3,4,5,6,7,8,9,10],就是把1~10十个数字从前往后一个一个地数一遍。
for循环可以遍历列表[1,2,3,4,5,6,7,8,9,10]中的每一个对象,每遍历一次,输出一次“冰墩墩”
for循环的基本结构:
变量i每一次遍历列表[1,2,3,4,5,6,7,8,9,10]时,会为其中的数字对象挂上i的标签,i的值会从1变成2,然后变成3,一直变到10,每一次遍历执行一次print("冰墩墩")
for i in [1,2,3,4,5,6,7,8,9,10]:
print("冰墩墩")
for item in iterable:
do something
for是关键字;
item [ a t m]是循环变量,这里是i,指向变量的值;
in是关键字,告诉i要遍历的对象在它后面;
iterable ['it reibl]是可遍历对象,可以是列表,也可以是字符串等。
是每一次循环需要执行的代码
for i in [10,20,30,40,50,60,70,80,90,100]:
print("冰墩墩")
猜猜:
如果列表里的数字更换为下面的数字,将会循环多少次呢?
10次
循环的次数和列表里数字的大小没关系,只和元素的数量有关系。
思考:如何输出1000行“冰墩墩”?
range() 函数,可创建一个整数列表
for i in range(1000):
print("冰墩墩")
使用range(1000)函数能完成1000次的循环
range() 函数创建的整数列表,其中的元素是如何计数的?
for i in range(10):
print(i)
range(n) 创建的整数列表是从0开始到n-1
执行程序
range(n)
for i in range(1,11):
print(i)
range(m,n)创建的整数列表是从m开始到n-1
range(m,n)
执行程序
for i in range(0,100,5):
print(i)
range(m,n,k)创建的整数列表是从m开始到n-1结束,间隔为k
range(m,n,k)
执行程序
range()函数:生成一段左闭右开的整数范围
语法:range(start, stop [,step])
start :计数起始值,默认是 0;
stop :计数结束值,但不包括 stop ;
step :步长,默认为 1
(二)遍历字符串对象
print("我有三个好朋友,他们分别是:")
for name in ["冰墩墩","雪容融","喜洋洋"]:
print(name)
(三)遍历字符串
str="我爱你,妈妈!"
for word in str:
print(word)
小试牛刀:
计算1到20的乘积并打印;
打印1带100之间的所有奇数;
遍历并打印family中的所有字母;
打印倒计时从10到1;
复习:
1.for循环:计算机程序中能重复一定次数的循环。
基本结构:
2.range() 函数:生成一段左闭右开的整数范围
语法:range(start, stop [,step])
range(10)
range(1,10)
range(1,10,2)
for item in iterable:
do something
探究任务:
输出9*9乘法表
例:制作“九九乘法表”
降低难度:针对一个数字的乘法表,数字5的乘法表
print("5*1=5")
print("5*2=10")
print("5*3=15")
print("5*4=20")
print("5*5=25")
print("5*6=30")
print("5*7=35")
print("5*8=40")
print("5*9=45")
for i in[1,2,3,4,5,6,7,8,9]:
for i in range(1,10):
for i in range(1,10):
print("5*i=5*i")
for i in range(1,10):
print(“5*%d=%d"%(i,5*i))
修改程序
每遍历一次,执行一次:“5*(一个数字)=(乘积)”
观察:
第一个乘数范围是1~9,第二个乘数范围也是1~9,因此需要设置两个变量,如:i和j,使用for循环进行遍历。
变量i的1乘以j值的1~9,i值的2乘以j值的1~9,……,i值的9乘以j值的1~9。即i不变,乘以j的1~9,直到i乘以j的9结束后,i才变化为2。
i的每一次遍历,都对应j的所有遍历,因此,i循环在外层,j循环在内层
for i in range(1,10):
for j in range(1,10):
print("%d*%d=%d"%(i,j,i*j))
i
j
i*j
i
j
i*j
for i in[1,2,3,4,5,6,7,8,9]:
for j in[1,2,3,4,5,6,7,8,9]:
print("%d*%d=%d"%(i,j,i*j))
外层循环
内层循环
for i in range(1,10):
for j in range(1,10):
print("%d*%d=%d"%(i,j,i*j))
for i in range(1,10):
for j in range(1,10):
print("%d*%d=%d\t"%(i,j,i*j),end="")
print("")
修改程序
空档
不换行
分行
j
i
for i in range(1,10):
for j in range(1,10):
print("%d*%d=%d\t"%(j,i,i*j),end="")
print("")
for i in range(1,10):
for j in range(1,i+1):
print("%d*%d=%d\t"%(j,i,i*j),end="")
print("")
修改程序
小结:
1.for循环:计算机程序中能重复一定次数的循环。
基本结构:
2.range() 函数:生成一段左闭右开的整数范围
语法:range(start, stop [,step])
start 指的是计数起始值,默认是 0;
stop 指的是计数结束值,但不包括 stop ;
step 是步长,默认为 1,不可以为 0
for item in iterable:
do something
(四)for循环在turtle库中的应用
import turtle
turtle.fd(200)
turtle.lt(120)
turtle.fd(200)
turtle.lt(120)
turtle.fd(200)
turtle.lt(120)
思考:小海龟一共前进并旋转了几次?
每一次都执行了什么代码?
import turtle
for i in range( ):
请用for遍历循环简化代码:
3
turtle.fd(200)
turtle.lt(120)
import turtle
for i in range(5):
turtle.fd(200)
turtle.lt(72)
思考:如何绘制正五边形?
连续前进相同的距离,向左(或向右)转 ? 度
复习:
1.for循环:计算机程序中能重复一定次数的循环。
基本结构:
2.range() 函数:生成一段左闭右开的整数范围
语法:range(start, stop [,step])
range(10)
range(1,10)
range(1,10,2)
for item in iterable:
do something
思考:如何画正n边形?
解决两个问题:
1.画几条边?
2.每画完一条边,小海龟转多少度?
1.假设是正n边形:
边数n就是循环的次数
正n边形即循环n次
import turtle
for i in range(3):
turtle.fd(200)
turtle.lt(120)
import turtle
for i in range(5):
turtle.fd(200)
turtle.lt(72)
n=3:三边形
n=5:五边形
2.正n边形每画完一条边转多少度?
正多边形每个外角:180-(n-2)*180/n
即:360/n
120°
72°
n=int(input("请输入正多边形的边数:"))
import turtle
for i in range(n):
turtle.forward(20)
turtle.left(360/n)
难度提高:如何绘制多瓣花朵图形?
观察并思考:
1.组成多瓣花朵图形的基本图形是什么?
五边形
6个
2.有多少个五边形?
3.其余5个五边形是在一个五边形的什么操作上绘制得来?
旋转
360/6=60°
画正五边形, 旋转60度;
绘制过程:
画正五边形, 旋转60度;
画正五边形, 旋转60度;
画正五边形, 旋转60度;
画正五边形, 旋转60度;
画正五边形, 旋转60度;
循环结构
import turtle
for i in range(6):
for j in range(5):
turtle.fd(200)
turtle.lt(72)
turtle.lt(60)
内层循环:画正五边形
外层循环:完成6次循环
每一次循环左转60度
尝试画出如下图形:
提示:
1.组成该图形的基本图形是什么?
2.每个基本图形有什么特点?
3.其余基本图形是在一个基本图形的什么操作上绘制得来?
import turtle
turtle.pensize(3)
turtle.speed(10)
colors=['red',"yellow","blue","green","pink"]
for i in range(5):
turtle.pencolor(colors[i])
for j in range(9):
turtle.circle((j+1)*20)
turtle.right(72)

展开更多......

收起↑

资源预览