python while 循环 全局变量_Python循环语句while的学习

4124e7ef18a164988ed333c34762cd0d.png


复习上一节if条件判断。

石头剪子布if条件判断,首先进行变量定义,将输入字符串转换成整型,然后赋值给player,假设1代表石头,2代表剪刀,3代表布,定义电脑固定出1,接下来进行变量格式化输出,然后进行if条件判断,分为3种情况,一种是玩家赢,一种是平局,另一种是电脑赢。首先进行玩家赢的判断,玩家赢又有3种情况,这3种情况用或连接,只要有一个条件满足即可,如下图所示,如果将判断条件都放在一行,看起来非常混乱,可以进行分行,但要整体加上括号,下一步进行平局判断,很简单只要player等于computer,那么就是平局,另外一种就是电脑赢。

e5db75ce47efb0add8b15765e0698cb6.png

上边的例子中电脑出的是固定值,如何让电脑随机出呢?

我们可以导入随机数模块,在ipython中输入命令import random,输入random.后按Tab键,出现下图情况,选择random.randint,random.randint代表随机整数,用法为下图所示,random.randint(a,b)中的ab,代表的区间边界值,ab时,则会报错。

4eced67681f2949bcebadad2bacdfab8.png

将石头剪刀布进行改进,让电脑随机出,import random需放在程序开头,以便于后面程序可以利用上,如下图所示。

0853fcd1583180d578a02fe9a4f5e71f.png

while循环语句基本格式如下图所示,首先定义个变量,当做计数器,在循环结束时不要忘记处理计数器,如果不进行处理,循环将会变为死循环。

f1bcdf52d7e89c388151714f2941bf81.png

赋值运算符,i=i+1 等价于i+=1如下图所示。其他形式也是这种。

d37519305b2b2dcca41f9c11761ac7b7.png

循环计算,计算0-100累计求和,首先定义个result用于存储计算结果,然后定义i用作计数器,每次循环i都加1,然后进行累加存储到result如下图所示。

da3d4307beccb0beb8b46704225e1ccd.png

计算0-100之间偶数累计求和,如何确定0-100之间偶数呢,需要在循环中嵌套个if判断,将i进行取余,余数为零则为偶数。如下图所示。

5da75eacb3c477b819370effaf6a5dfd.png

计算0-100之间奇数累计求和,如何确定0-100之间奇数呢,需要在循环中嵌套个if判断,将i进行取余,余数不为零则为奇数。如下图所示。

8de249e5b70fe2ae1662dc269208d110.png

break的使用方法:满足某一条件时,退出循环,不再执行后续重复代码。如下图所示,当i=3时直接退出循环,所以i的结果只有012。

ce9aa1033e8a503276580b3177b849d5.png

continue的使用方法:满足某一条件时,不在执行后续重复代码。如下图所示,当i=3时,程序直接跳回while判断条件,但此时i还是等于3,于是接着进入if判断条件,这会导致死循环。

859b20ea7da5df447bf5dd9b29aa8979.png

在上面的问题中,在if条件判断中加上i+=1,这样当i=3时,进入if条件判断,i会变为4,然后continue跳回while判断条件,所以程序结果会缺少3这一项。

70ca4ae5b939917b4e5e2915f49cd68b.png

输出下图图形的方法。利用循环嵌套可以完成,首先定义行row,要输出5行则需要循环5次,在循环中定义列col,然后嵌套另一个循环,循环条件为列小于等于行,当列小于等于行时,输出("*", end=""),print函数输出内容之后,会自动在内容末尾增加换行,利用end=""代替掉自动换行,然后进行列加1,跳出嵌套的循环,print("")为自动换行,然后行加1,意思是第一行为一个*,然后换行,第二行进行循环两次,第二行变为两个*,然后换行,依次进行,第五行变为五个*,然后换行。

3c8b0f374508fd090679314e1983671a.png

另外一种方法是利用字符串的拼接,直接一个循环即可,如下图所示。

3d4de41899838dacc003ff8ac81e5362.png


b7eb299cfc9614da99e97fccbe9edf3d.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值