Python基础教程之循环结构详解,循环结构逻辑解析。


在这里插入图片描述

前言

在编写代码时如果能够简化一个程序,把重复的代码形成公共部分,利用语法来控制,对代码进行循环往复的执行,这就形成了循环结构逻辑。

一、While循环

While循环的语法格式如下:

while 条件表达式 :
代码段(包含改变计数器值的语句)

while 关键词后面紧跟的条件表达式决定了循环是够进行下去。

下面用while语句实现求1~100的累加和,代码如下:

count = 1        #计数器
sum0 = 0        #统计和值,初始值为0
while count <= 100 :
    sum0 += count
    count += 1
print(sum0)

运行结果如下:

While循环的语法要点需要做的就是以下三件事:

  • 1、定义计数器的初始值,这个计数器可以计数,也可以用作求解问题的数字处理。
  • 2、While循环条件保证计数器在一定条件下退出循环。
  • 3、循环做的事情放在循环体里,同是不要忘记计数器的叠加效果。

二、While…else…循环

While…else…的语法格式如下:

while 条件表达式 :
代码块1
改变计数器的值
else :
代码块2

这个格式比原来基本的while格式读了一个else语句,器质性流程也多了一步流程,即当while循环体正常执行完后执行else代码块中的内容。

下面用while语句实现银行卡吞卡验证,代码如下:

count = 1
password = input("输入密码:")
while count < 3 :
    if password == "000000" :
        print("密码正确,您可以取款了")
        break
    else :
        input("密码错误,请再一次输入密码:")
    count += 1
else: print("密码错误,卡被吞")

运行结果如下:

break用来推出循环体,不再执行本层循环。

三、for循环

while循环和for循环用于处理不同的问题,while应用在不知道循环次数的情况下,for应用在确定循环次数的情况下。

for循环语句的格式如下:

for 临时变量 in 可迭代对象 :
循环体

执行过程就是将每一个可迭代对象中的每一个元素复制给临时变量,再执行循环体。当可迭代对象中的元素全部遍历完后for循环就停止运行。

如用for循环求1~100的累加和,代码如下:

sum0 = 0
for count in range(1,101,1) :
    sum0 += count
print(sum0)

以上代码看上去比while循环简单一些,所以变成习惯上使用for循环。

注意: Python的区间左边可以等于,右边一定不等于,即左闭右开。

range函数可以接受3个参数,range(start,stop,step)产生一个从start开始到stop结束的一个整数序列,step是步长。

四、for…else…循环

While…else…的语法格式如下:

for 临时变量 in 可迭代对象 :
循环体
else :
代码块2

当for循环体正常执行完后执行else代码块中的内容,否则不会执行else中的代码。

如上述银行卡吞卡使用for循环就会这样写:

password = input("输入密码:")
for i in range(1,3,1) :
    if password == "000000" :
        print("密码正确,您可以取款了")
        break
    else :
        input("密码错误,请再一次输入密码:")
else: print("密码错误,卡被吞")

运行结果如下:

五、循环体结束语句

Python的循环逻辑控制是依靠for和while这两种语句来实现的。但是,有时不需要把循环执行完,条件合适时需要直接退出循环,这时可以使用break语句。还有一种需求,不需要退出整个循环,而是退出本次循环,可以使用continue语句。这两个语句的区别如下:

  • 1、break用于完全结束一个循环,跳出循环体之行循环后面的语句。
  • 2、continue只是终止本次循环,接着还之行后面的循环。

下面经过具体实例来了解break和continue的使用:

  • 循环打印奇数

如果判断是偶数,进入下一次循环,如果判断是奇数,直接打印。

for i in range(1,11) :
    if i%2==0 :
        continue
    print(i)

运行如下:

  • 循环打印闰年

循环找出2020-2051年中的第一个闰年。

for year in range(2020,2051) :
    if year%4==0 and year%100!=0 or year%400==0 :
        print(year)
        break

运行如下:

六、嵌套循环

以打印九九乘法表为例:

1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81

分析以上九九乘法表的思路,从输出格式中可以看到数字是从1乘1一直到9乘9,要形成1到9两个数交叉相乘的效果,就必须依靠循环嵌套

代码如下:

for i in range(1,10) :
    for j in range(1,10) :
        print("%d\*%d=%d"%(i,j,i\*j))

运行结果如下:

可以看出以上代码打印的是竖向的乘法表,原因是目前的结束符是换行,修改结束符即可。现在把结束符换成“/t”制表符。

修改后的代码如下:

for i in range(1,10) :
    for j in range(1,10) :
        print("%d\*%d=%d"%(i,j,i\*j),end="\\t")
    print()

运行结果如下:

此时每一行的的第一个字符相等,与结果的每一列字符相等,所以输出可以将i和j互换。并且,应该是第一行只留11,第二行只留12,2*2,以此类推才能实现要求的乘法表。具体方法是当外层循环比内层循环数字小时,退出本层循环。

最终代码如下:

for j in range(1,10) :
    for i in range(1,10) :
        if i > j :
            continue
        print("%d \* %d = %d"%(i,j,i\*j),end="\\t")
    print()

运行结果如下:


关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

保存图片微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python基础学习视频

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

三、精品Python学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、Python工具包+项目源码合集
①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

六、Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以保存图片微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值