关于python循环(自)

阅读: 评论:0

2024年8月21日发(作者:)

关于python循环(自)

循环

Python两种循环:遍历循环(for),无限循环(while)

一、遍历循环(确定了循环次数的循环)

几种类型:

1、计数循环(N次)

格式: For i in range(N):

<语句块>

功能:遍历由range( )函数产生的数字序列,产生循环。

举例:

举例:计算1+2+……+10的结果? (计数变量在循环体中可以使用)

2、计数循环特定次

格式: For i in range(M,N,K):

<语句块>

功能:遍历由range( )函数产生的数字序列,产生循环。

举例:

3、字符串遍历循环

格式: For c in s :

<语句块>

功能:s是字符串,遍历字符串每个字符,产生循环。

举例:

4、列表遍历循环

格式: For item in ls :

<语句块>

功能:ls是一个列表,遍历其每个元素,产生循环。

举例:

5、文件遍历循环

格式: For line in fi :

<语句块>

功能:fi是一个文件标识符,遍历其每行,产生循环。

举例:

我们目前只给大家讲了些简单的数据类型,后面会介绍元组类型,字典类型,这些数据类型都可以实现遍历循环。

举例:统计不同字符个数。用户从键盘输入一行字符,编写一个程序,统计并输出其中英文字符、数字、空格

和其他字符的个数。(tf2)

举例2:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少

米?第10次反弹多高?(xq)

Sn = 100.0

Hn = Sn / 2

for n in _____:

Sn=Sn+ _ _ _

Hn /= 2

print( 'Total of road is %f' % Sn)

print( 'The tenth is %f meter' % Hn)

1 2 …… 10

举例3、猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。

第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。

到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。(ht1) (ht2)

x = 1 x=1

for day in :

while :

print(x)

print(x)

无限循环:格式:

--反复执行语句块,直到条件不满足时结束。

举例:

循环控制保留字: break 和continue

1)break跳出并结束当前整个循环,执行循环后的语句。

2)continue结束当次循环,继续执行后续次数循环。

3)break 和 continue 可以与for 和while循环搭配使用。

举例:

双重循环举例:

break仅跳出当前内层循环,外层循环仍然有效!

举例1:用户输入行数和列数,输出指定行数和指定列数的"*"。例如输入行数为4,列数为5,则输出4行5列的

“*”。如图 提示:使用双重循环 (tf12) 列变,行变

*****

*****

*****

*****

举例2:乘法口诀表 (tf13) 提示使用双重循环

举例3:显示100以内与7无关的数。

n=1

while _____:

if n%7==0 or n%10==7 or n//10==7:

n=n+1

_____

print(n,end=' ')

n=n+1

循环的高级用法:(循环与else的搭配)

格式1: 格式2:

for <循环变量> in <遍历结构> : while <条件> :

<语句块1> <语句块1>

else : else :

<语句块2> <语句块2>

功能:当循环没有被break语句退出时,执行else语句块。这里else的用法与异常处理中的else用法类似。

举例:

举例1:变化举例2:猜数 (tf14)

举例2:输入一个数,判断是否是素数。(SS)

举例3:换成输出300以内的所有素数。(300以内素数)

1、在循环中continue语句的作用是跳出当前循环?

2、在循环语句中,__________语句的作用是提前结束本层循环。

3、在循环语句中,_______语句的作用是提前进入下一次循环。

4、对于带有else子句的循环语句,如果是因为循环条件表达式不成立而自然结束循环,则执行else子句中的代码?

5、带有else子句的循环如果因为执行了break语句而退出的话,则会执行else子句中的代码?

6、对于带有else子句的for循环和while循环,当循环因循环条件不成立而自然结束时________(会或不会)

执行else中的代码。

7、Python 3.x语句 for i in range(3):print(i, end=',') 的输出结果为_________。

8、如果仅仅是用于控制循环次数,那么使用for i in range(20)和for i in range(20, 40)的作用是等价的?

random库介绍

1)random库是使用随机数的python标准库。使用random库的方法:import random

2)random库主要用于生成随机数。random产生的是伪随机数,是采用梅森旋转算法生成的(伪)

随机序列中的元素。

random库包括两类函数,常用的共8个。

-基本随机数函数: seed( ),random( )

—扩展随机数函数:randint( ),uniform( ),randrange( ),choice( ),shuffle( )

基本随机数函数

机数产生的算法是相同的,所以一旦种子相同,则产生的随机序列,无论是每一个数,还是数之间的关系都是

确定的。所以说随机数种子,确定了随机序列的产生。

举例:

那么,我们为什么要给种子呢?因为如果在编程中给出了随机种子,那么下一次程序再次运行,只要种子相同,

那么产生的随机数也是相同的。对于使用随机数的程序,我们可以复现或者再现程序运行的过程。

扩展随机数函数

左右都是闭区间喔!

sample(list,k)

返回一个长度为k新列表,新列表存放list所产生k

个随机不重复的元素。

>>>list = range(1, 10000);print((list ,5))

[6912, 1869, 5991, 721, 3388]

1、假设random模块已导入,那么表达式 (range(10), 7) 的作用是生成7个不重复的整数。

2、假设已导入random标准库,那么表达式 max([t(1, 10) for i in range(10)]) 的值一定是10。

3、Python标准库random的方法randint(m,n)用来生成一个[m,n]区间上的随机整数。

4、使用random模块的函数randint(1, 100)获取随机数时,有可能会得到100。

1、已知x为非空列表,那么表达式 (x) in x 的值为___________。

2、Python标准库random中的___________方法作用是从序列中随机选择1个元素。

3、random模块中_____________方法的作用是将列表中的元素随机乱序。

随机函数的使用:

举例1: 猜数游戏。在程序中预设一个0—9之间的整数,让用户通过键盘输入所猜的数,如果大于预设的数,

显示“遗憾,太大了”;小于预设的数,显示“遗憾,太小了”。如此循环,直至猜中该数,显示“预测N次,你猜

中了!”,其中N是用户输入数字的次数。(tf1)已经讲过类似的

举例2:我们来玩一个猜拳游戏!电脑和你比出拳!(剪刀,石头,布)

举例3:见书56页例3-22(tz)

循环举例:圆周率的计算

方法一:

程序实现:

给pi赋初值为0

——这个是续行符

方法二:

我们知道:

扇形阴影部分的面积为:pi*r*r/4

小正方形的面积为:r

2

我们可以假设,正方形的面积是由无

数个点组成的,这些点部分落在扇形阴影

区域内,部分落在扇形区域外。

因此我们可以认为扇形阴影部分面积

与小正方形面积之比,就是落在扇形阴影

区域内的点和落在整个小正方形内的点的

数量之比。这就是蒙特卡洛方法。把面积

之比转换成电的数量之比。

由此我们可以知道:

扇形面积/正方形面积=

pi*r*r/4/r*r=pi/4=扇形内的点/总点数

 pi=(扇形内的点/小正方内的总点

数)*4

程序设计思路:我们随机生成若干个

小正方形内的数(100万?),然后判断这

些数是否落在扇形阴影内(也就是点到圆

心的距离是否小于等于半径),计算随机生

成的数中有多少数是落在扇形阴影面积内

的,然后除以总的随机数,最后乘以4,

即可得到pi值。(tf15)

程序的第3条语句,和最后一条语句

是计算运算时间的,函数功能可在第三章time库介绍中查看。

关于python循环(自)

本文发布于:2024-08-21 15:59:00,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/1724227140306366.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:循环   举例   产生   语句   遍历   函数
留言与评论(共有 0 条评论)
   
验证码:
排行榜

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23