• 5、python之条件,循环语句


    一、虾扯蛋

          无论什么语言其实都离不开顺序,条件,循环这三种结构,包括中文。当我们和别人在描述这样一件事情:“明天是周六,如果明天天气好的话我就去和和朋友逛街,否则我就在家一直玩游戏”。这段话中,我们描述这件事情的时候就是一个

    顺序描述,而出现如果。。。。否则。。。。。这种的就是条件,一直玩游戏是一个重复的工作表示循环做一件事情。当然,上面的中文的语法,那下面我们一起来看看python是如何来表示的,顺序的自然就不用多说了。

    二、条件语句

          在python中如果表示某段代码需要满足某些条件才能执行时的语法如下:

    1 age = 60
    2 if age >= 60:
    3     print("你老了")
    4 else:
    5     print("你还年轻,可以继续浪")

    使用关键字if....else来表示条件语句,我们看看下面的代码:

    1 age = 60
    2 if age >= 60:
    3     print("你老了")
    4 else:
    5     print("你还年轻,可以继续浪")
    6 print("你猜我会输出吗?")

    问题来了,第6行的代码会输出吗?我们来看一个图,大家就应该清楚了。

    在其它语言像C++,JAVA,C#等一般都是使用{}来表示if,else的作用区域,python中使用行缩进的方式来表示作用区域,这样会使得python的代码结构看起来清晰明了,这也符合了硅叔当初对python的定义。

         有的时候,我们程序中可能需要更多的判断语句,比如说我们有这样的程序:

    1 age = 12
    2 if age >= 60:
    3     print("你老了")
    4 else:
    5     if age < 20:
    6         print("太年轻了,好好学习吧")
    7     else:
    8         print("你还年轻,可以继续浪")
    9 print("你猜我会输出吗?")

    程序运行如下:age=12,不满足if条件,执行else代码块,else代码块中判断age<12成立,打印“太年轻了,好好学习吧”,不执行else代码块,程序继续往下走,打印“你猜我会输出吗?”,程序运行结束。我们总结一下,这个程序其实

    有3中情况:1、age>=60 2、20<=age<60 3、age<20。如果我们再对<20的进行细分,整个程序的结果看起来就不那么清晰,这显然不符合当初定义python的初心(虽然这样语法没毛病,但不建议这样干)。python有更好的语法去处

    理这种情况。我们看下面的程序:

     1 age = 4
     2 if age >= 60:
     3     print("你老了")
     4 elif age < 20 and age>=10:
     5     print("太年轻了,好好学习吧")
     6 elif age<10:
     7     print("你还是个孩子啊")
     8 else:
     9     print("你还年轻,可以继续浪")
    10 print("你猜我会输出吗?")

    我们使用if  elif  elif.......else来处理多种条件的场景,看,现在代码是不是清晰多了。

    二、循环语句

          python中定义循环主要用到关键字:while和for,先用while来玩一把:

    1 count = 10
    2 while count >= 0:
    3     print("count的值为:%s" % count)
    4     count = count - 1

    上面程序的功能是:只要count满足count >= 0就打印出count的值,while中的循环一共被执行了11次,对于循环语句而言,随着程序的运行必须存在一个条件来终止循环,上面的代码我们还可以利用关键字break来终止循环。修改如下:

    1 count = 10
    2 while True:
    3     print("count的值为:%s" % count)
    4     count = count - 1
    5     if  count < 0:
    6         break

    while True:这个条件永真,程序要想终止就必须在循环体内进行终止,因此我们用到了break来终止循环。

    针对上面的代码,思考这样一个需求,如果while中的条件不满足,则执行print("循环结束")。程序代码如下:

    1 count = 10
    2 while count >= 0:
    3     print("count的值为:%s" % count)
    4     count = count - 1
    5 else:
    6     print("循环结束")

    这是python固有的语法格式,记住它吧!

    OK,我们现在把上面代码改成for循环的形式,代码分别如下:

    1 for count in range(0,11): #顾头不顾尾 range(1,11)表示count取[1,10]
    2     print("count的值为:%s" % count)
    3     count = count - 1  #这里有坑,请思考
    4 else:
    5     print("循环结束")

          学习了循环语句,我们现在使用for循环来遍历我们之前学过的基本数据类型。

    1、列表的遍历:

    1 list = [1,2,3,4,"434","12"]
    2 for i in list:
    3     print(i)

    2、元组的遍历

    tuple = ("上海","北京","扬州")
    for city in tuple:
        print(city)

    3、集合的遍历

    1 set = set([1,2,3,4,5])
    2 for i in set:
    3     print(i)

    4、字典的遍历

    1 dic = {1:"高文祥",2:"helen",3:"C罗"}
    2 for key in dic:
    3     print(key,dic[key],dic.get(key))
  • 相关阅读:
    深入Eureka/Feign/Hystrix原理学习(1)
    mysql截取函数substring_index()和right()用法
    Mybatis映射文件的自动映射与手动映射问题
    MySQL单向加密函数
    Grovvy带参数的闭包
    微信小程序开发编程手记20190303
    IDEA 各版本在线激活(激活码)
    Vue实例:演示input 和 textarea 元素中使用 v-model 实现双向数据绑定
    mybatis异常解决:class path resource [SqlMapConfig.xml] cannot be opened because it does not exist
    【学亮IT手记】MySql行列转换案例
  • 原文地址:https://www.cnblogs.com/win0211/p/8335233.html
Copyright © 2020-2023  润新知