Python中的分支语句和循环语句及案例

今天是清明假期的最后一天,依旧学习着 Python,老样子来写一篇博客。本篇博文介绍一下 Python 中的 if 条件语句、while 循环语句、for in 循环语句以及 break 和 continue 控制关键字。

if 条件控制语句

条件控制语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。if 后面应该接一个条件,即一个布尔类型。而且 Python 是通过缩进控制条件块的,相同缩进数的语句在一起组成一个语句块,和 PHP 的 if else 就近原则不同。

money = 17
if money > 18:
    print("今天吃鸡")
if 10 < money <= 18:
    print("今天吃鱼")
if money == 0:
    print("今天不吃了")

if,elif,else 条件判断语句

if else 条件,表示如果..否则..,if 后面的条件成立则执行,if 如果不成立就执行 else,else 后面是没有条件的,在多个条件下,Python 的 else if 简写成了 elif。

if money > 18:
    print("今天吃鸡")
elif 10 < money <= 18:
    print("今天吃鱼")
else:
    print("今天不吃了")

for in 循环语句

对于列表或者字典或者字符串这种想把里面的元素挨个取出来,我们可以使用 for in 循环。

a = [1,2,3,4,5]
for i in a:
    print("现在执行第{}次循环".format(i))
    print("*"*10)

如果下面的 print 没有前面的缩进,就会只打印一次,因为它不在循环内。

while 循环

while 循环,只要条件满足,就不断循环循环内的语句,条件不满足时退出循环。

number_a = 1
while number_a<10:
    print("当前 a 是{}".format(number_a))
    a = a+1

print("程序结束")

break 和 contiune

break 表示终止循环,continue 表示退出当前循环

案例

用 Python 编写一个计算是否为闰年的程序

什么是闰年呢?

能被 4 整除且不能被 100 整除的为闰年,或者能被 400 整除的是闰年。

这里提供两种答案。

year = int(input("输入一个年份: "))
if (year % 4) == 0:
   if (year % 100) == 0:
       if (year % 400) == 0:
           print("{}是闰年".format(year))   # 整百年能被 400 整除的是闰年
       else:
           print("{}不是闰年".format(year))
   else:
       print("{}是闰年".format(year))       # 非整百年能被 4 整除的为闰年
else:
   print("{}不是闰年".format(year))

第二种

year = int(input("请输入一个年份:"))
if (year % 4) == 0 and (year % 100) != 0 or (year % 400) == 0:
    print("{}是闰年".format(year))
else:
    print("{}不是闰年".format(year))

沈唁志|一个PHPer的成长之路! 原创文章采用CC BY-NC-SA 4.0协议进行许可,转载请注明:转载自:Python中的分支语句和循环语句及案例

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏C语言及其他语言

[每日一题]字符串的连接

上一次是要反序输出字符串,而这次是要连接两个字符串,难度都不大,快来试试吧! 题目描述 写一函数,将两个字符串连接 输入 两行字符串 输出 链接后的字符串 样...

33860
来自专栏技术/开源

30分钟?不需要,轻松读懂IL

先说说学IL有什么用,有人可能觉得这玩意平常写代码又用不上,学了有个卵用。到底有没有卵用呢,暂且也不说什么学了可以看看一些语法糖的实现,或对.net理解更深一点...

20770
来自专栏马洪彪

Java设计模式(五)Prototype原型模式

一、场景描述 创建型模式中,从工厂方法模式,抽象工厂模式,到建造者模式,再到原型模式,我的理解是,创建对象的方式逐步从编码实现转向内存对象处理。 例如,在“仪器...

29370
来自专栏Play & Scala 技术分享

挑逗 Java 程序员的那些 Scala 绝技

有个问题一直困扰着 Scala 社区,为什么一些 Java 开发者将 Scala 捧到了天上,认为它是来自上帝之吻的完美语言;而另外一些 Java 开发者却对它...

19160
来自专栏python学习之旅

算法学习笔记(四):堆排序

16530
来自专栏coder修行路

《深入理解计算机系统》阅读笔记--信息的表示和处理(上)

结果是负数!!!! 这个结果理论上是非常不应该的,这已经违背了我们的常识,毕竟正数的乘积,最后的结果应该还是一个正数,但是这里出现负数的情况,虽然结果不对,但是...

12000
来自专栏Java爬坑系列

【Java入门提高篇】Day1 抽象类

  基础部分内容差不多讲解完了,今天开始进入Java提高篇部分,这部分内容会比之前的内容复杂很多,希望大家做好心理准备,看不懂的部分可以多看两遍,仍不理解的部分...

23660
来自专栏TungHsu

这或许是对小白最友好的python入门了吧——3,数字处理

昨天那篇推文是不是太长了,以后为了大家能够更好地理解,所以我们还是写的少点,大家看完以后要好好练习哦! 不要在此处直接复制代码! 在Python中可以执行对整...

32460
来自专栏java一日一条

10行Java代码实现最近被使用(LRU)缓存

在最近的面试中,我曾被多次问到,怎么实现一个最近最少使用(LRU)的缓存。缓存可以通过哈希表来实现,然而为这个缓存增加大小限制会变成另一个有意思的问题。现在我们...

10920
来自专栏C语言及其他语言

[每日一题]数字整除

C语言的奇葩之一就是明明可以直接除以17解决的问题偏偏要搞得这么麻烦 但我们能有什么办法呢,只能说是对思想的锻炼了呗! 题目描述 定理:把一个至少两位的正整...

34670

扫码关注云+社区

领取腾讯云代金券