zoukankan      html  css  js  c++  java
  • Python循环语句应该怎么写

    Python有两种循环模式,我们先讲遍历循环。
    先看一个案例:

    for i in range(1,10):
    print(i,end = '')
     
    打印出来些什么?是不是123456789?大家仔细看这个代码,是不是有我们昨天说的:缩进。我们现在来看看遍历循环的格式:

    for 循环变量 in 遍历结构:
    语句块

    大家肯定搞不明白:什么叫遍历???
    遍历结构可以是字符串、文件、range()函数或组合数据类型等。
    遍历循环可以理解为从遍历结构中逐一提取元素,放在循环变量中,对于每个所提取的元素执行一次语句块。for语句的循环执行次数是根据遍历结构中元素个数确定的

    这下懂了吧。如果还不懂,我有个图,不过大家应该看不懂…
    所以就不展示了吧…
    没关系,其实大家多练练就好了。
    下面给大家讲讲range函数:

    range(a,b,c)

    a是开始,默认为0。b是结束的(不算),c是步长,默认为1。比如:

    for i in range(1,5): #1,2,3,4
    print(i)
    print(i)
     
    我们来解析一下:
    第一次循环,i被赋值为1,打印为1
    第二次循环,i被赋值为2,打印为2
    第三次循环,i被赋值为3,打印为3
    第四次循环,i被赋值为4,打印为4
    循环结束,最后打印i,i的值最后被赋值为4,因此打印4,所以所有的运行结果为:
     

    为什么换行?很简单,我们没加end = ‘’,加了就行了。

    我们再来个难一点的:

    for i in range(1,5):
    if i == 2:
    print('i是2,你中奖了!')
    else:
    print('i是{},你没中奖。'.format(i))
     
    这个我们再来分析分析:
    第一次循环,i被赋值为1,i不为2,因此打印出:i是1,你没中奖。
    第二次循环,i被赋值为2,i为2,因此打印出:i是2,你中间奖了!
    第三次循环,i被赋值为3,i不为2,因此打印出:i是3,你没中奖。
    第四次循环,i被赋值为4,i不为2,因此打印出:i是4,你没中奖。

    不难吧?现在我们来个好玩的:

    for i in range(1,10):
    for j in range(1,i+1):
    print('{}*{}={} '.format(i,j,i*j),end = '')
    print('')
     
    打印了什么,乘法表对吧?自行分析一下吧!

    现在我们来讲讲无限循环。

    i = 0
    while True:
    print(i)
    i += 1
     
    你的电脑卡了吗?呵呵,没错,这就是无限循环,好了,现在停下程序,来看干货。

    while 条件:
    语句块

    当程序执行到while语句时,判断条件如果为True,执行语句块,语句结束后返回再次判断while语句的条件;当条件为False时,循环终止。继续后续语句。

    讲到无限循环,那我们怎么让程序跳出无限循环且不手动停止程序呢?这里就有两个关键字:

    break
    continue

    我们先用for语句试一试break

    a = 'python'
    for i in a:
    if i == 'h':
    print(' 你输入的内容里有h,h是违规字。')
    break
    print(i,end = '')
     
    我们再用试一试continue

    a = 'python'
    for i in a:
    if i == 'h':
    print(' 你输入的内容里有h,h是违规字。')
    continue
    print(i,end = '')
     
    这两个有什么区别呢?虽然结果不同,但是说明了什么呢?

    break用来跳出当前循环,脱离该循环后程序从循环后代码继续执行。
    如果有2层或多层循环,break退出最内层循环。

    continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳出当前循环。

    一头雾水,对吧,那我们还是来分析分析程序:

    第一个用break的:
    第一次循环,i为’p’,不为’h’,打印’p’
    第二次循环,i为’y’,不为’h’,打印’y’
    第三次循环,i为’t’,不为’h’,打印’t’
    第四次循环,i为’h’,打印’你输入的内容里有h,h是违规字。'跳出内循环。

    第二个用continue的:
    第一次循环,i为’p’,不为’h’,打印’p’
    第二次循环,i为’y’,不为’h’,打印’y’
    第三次循环,i为’t’,不为’h’,打印’t’
    第四次循环,i为’h’,打印’你输入的内容里有h,h是违规字。’,跳出本次循环
    第五次循环,i为’o’,不为’h’,打印’o’
    第六次循环,i为’n’,不为’h’,打印’n’

    这下懂了吧。

    然后现在讲两种扩展模式:

    for 循环变量 in 遍历结构:
    语句块1
    else:
    语句块2

    当for循环正常执行之后,程序会继续执行else语句中内容。else语句只在循环正常执行之后才执行并结束,因此,可以在语句块2中放置判断循环执行情况的语句。

    while 条件:
    语句块1
    else:
    语句块2

    当while循环正常执行之后,程序会续执行else语句中内容。else语句只在循环正常执行后才执行,因此,可以在语句块2中放置判断循环执行情况的语句。


    ————————————————
    版权声明:本文为CSDN博主「波斯王」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/Persia_king/article/details/105046787

    你有什么心态,就有什么样的人生。管不好自己的心态,注定你就是个弱者。
  • 相关阅读:
    solr8.4.1开发测试环境的简单应用
    spring aop + xmemcached 配置service层缓存策略
    git配置httpd服务-web_dav模式
    notepad++快捷键
    Eclipse默认快捷键说明
    maven&nexus_repository 私库搭建与使用
    CENTOS下搭建git代码仓库 ssh协议
    送给iOS求职者的一份硬核面试指南,你可以不优秀,但是你必须重视!
    2020年中高级iOS大厂面试宝典+答案
    iOS开发者经验总结:在腾讯的九年,我的成长之路和职业思考
  • 原文地址:https://www.cnblogs.com/LQZ888/p/12566864.html
Copyright © 2011-2022 走看看