计算机程序在解决某个具体问题时,包括三种情形,即顺序执行所有的语句、选择执行部分的语句和循环执行部分语句,这正好对应着程序设计中的三种程序执行结构流程:顺序结构、选择结构和循环结构。

事实证明,任何一个能用计算机解决的问题,只要应用这三种基本结构来写出的程序都能解决。Python语言当然也具有这三种基本结构。
一、选择结构(if语句)
1、if语句的结构:
     if <条件1>:
          <语句1>
     elif <条件2>:
          <语句2>
     else:
          <语句3>
     此时,条件1成立时执行语句1,;条件2成立时执行语句2;条件1和条件2都不成立时执行语句3。
实例:
x = int(input("请输入您的总分:"))
if x >= 90:
print('优')
elif x>=80:
print('良')
elif x >= 70:
print('中')
elif x >= 60:
print('合格')
else:
print('不合格')
     需要注意的是:在使用多个elif语句的分支结构时,应把握好多个条件语句之间的关系。只要有一个条件成立,就会将其后的语句执行,执行后退出整个if语句。
实例:
x = int(input("请输入您的总分:"))
if x >= 90:
print('优')
elif x>=80:
print('良')
elif x >= 60:
print('合格')
elif x >= 70:
print('中')
else:
print('不合格')
     此时程序中的print('中')语句永远不会执行,因为当输入[70,80)这个区间的数时先判断x>=60成立,则执行其后的语句并输出合格,之后退出if语句。
2、三元运算符
  if语句可以使用在一个单语句中,实现三元运算符,基本形式:<表达式1> if <条件> else <表达式2>
3、if语句的嵌套
     if<条件>:
          if<条件>:
               <语句1>
          elif<条件>:
               <语句2>:
     else:
          <语句3>
编写条件语句时,应该尽量避免使用嵌套语句。嵌套语句不便于阅读,而且可能会忽略一些可能性。
 
二、for循环语句
1、for语句的结构:
  Python语言中的for语句与其他高级程序设计语言有很大的不同,其他高级语言for语句要用循环控制变量来控制循环。Python中for语句是通过循环遍历某一序列对象(字符串、列表、元组等)来构建循环,循环结束的条件就是对象被遍历完成。
  for语句的形式如下:
       for <循环变量> in <循环对象>:
            <语句1>
       else:
            <语句2>
  else语句中的语句2只有循环正常退出(遍历完所有遍历对象中的值)时执行。
实例:
for num in range(10,20):
for i in range(2,num):
if num % i == 0:
j = num/i
print("%d等于%d*%d" % (num,i,j))
break
else:
print("%d是一个质数" % num)
2、range()函数
  for语句的循环对象可以是列表、元组以及字符串,可以通过range()函数产生一个迭代值,以完成计数循环。
  range( [start,]  stop [, step])
实例:
>>> for i in range(5):
print(i) 0
1
2
3
4
>>> for i in range(0,10,3):
print(i) 0
3
6
9
  for语句使用range()函数可以构建基于已知循环次数的循环程序,也可以以range()生成的数字作为索引来访问列表、元组、字符串中的值。
  需要注意的是,range() 函数返回的对象表现为它是一个列表,但事实上它并不是,range()函数并不是在调用时一次生成整个序列,而是遍历一次才产生一个值,以减少内存的占用,其本质是一个迭代器。
如:
>>> range(10)
range(0, 10)
>>> type(range(10))
<class 'range'>
>>> list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
 
三、while循环语句    
  for语句以遍历对象的方式构造循环,有时却需要构造一种类似无限循环的程序控制结构或某种不确定运行次数的循环,就需要使用while语句
1、while语句结构:
  while语句的基本形式如下:
       while<条件>:
            <语句1>
       else:
            <语句2>
  与for循环不同的是,while语句只有在测试条件为假时才会停止。
实例:
count = 0
while count < 5:
print(count, " is less than 5")
count = count + 1
else:
print(count, " is not less than 5")
 
四、break语句、continue语句、pass语句
  break语句用在while和for循环中,break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。
  continue语句用在while和for循环中,continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。 continue 语句跳出本次循环,而break跳出整个循环。
  Python pass是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句。
实例:
for i in range(10):
if i%2 == 0:
continue
print(i)
if i>=7:
break
else:
print("循环结束") 1
3
5
7

python----流程控制的更多相关文章

  1. python 流程控制(条件语句)

    1,python流程控制单条件基本语句 2,python流程流程多条件控制语句 3,三元运算 1,python流程控制单条件基本语句 if 判断条件: 执行语句…… else: 执行语句…… 判断条件 ...

  2. Python(四)之Python流程控制(if、while、for)

    Python流程控制 if测试: if 条件测试表达式: 组合条件测试: x and y:与运算 x or y:或运算 not x:非运算 while: break:跳出最内层的循环 continue ...

  3. Python 流程控制-分支结构详解

    目录 Python 流程控制--分支结构 1.结构分类 顺序结构 分支结构 循环结构 2.分支结构详解 分支结构 定义格式: if 单支结构 if 双分支结构 if 多分支结构 Python 流程控制 ...

  4. Python基础-python流程控制之顺序结构和分支结构(五)

    流程控制 流程:计算机执行代码的顺序,就是流程 流程控制:对计算机代码执行顺序的控制,就是流程控制 流程分类:顺序结构.选择结构(分支结构).循环结构 顺序结构 一种代码自上而下执行的结构,是pyth ...

  5. Python流程控制-逻辑运算-if...else语句

    摘录自:http://www.runoob.com/python/python-if-statement.html Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执 ...

  6. Python 流程控制 超全解析(不可错过)

    流程控制 程序执行结构流程 计算机程序在解决某个具体问题时,包括三种情形,即顺序执行所有的语句.选择执行部分的语句和循环执行部分语句,这正好对应着程序设计中的三种程序执行结构流程:顺序结构.选择结构和 ...

  7. python流程控制和循环

    变量的命名:可以由数字字母下换线组成 ,不能以数字开头,可以使用中文但是不推荐使用中文,不推荐前面使用_ __,不能使用系统的关键字,变量名严格区分大小写 逻辑运算优先级 or<and<n ...

  8. Python流程控制-1 顺序执行

    流程控制指的是代码运行逻辑.分支走向.循环控制,是真正体现我们程序执行顺序的操作.流程控制一般分为顺序执行.条件判断和循环控制. 顺序执行 Python代码在执行过程中,遵循下面的基本原则: 普通语句 ...

  9. python流程控制-if

    在python中流程控制可以分为三种,分别是顺序结构.分支结构和循环结构.分支结构:if..else循环结构:while循环.for循环 一:分支结构 1:单项分支 语法: 含义:判断条件,条件结果为 ...

  10. 【Python从入门到精通】(十)Python流程控制的关键字该怎么用呢?【收藏下来,常看常新】

    您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 这篇文章主要介绍Python中流程控制的关键字的使用,涉及到if else,for,while等关键字 干货满满,建议收藏,需要用到时常看看. 小 ...

随机推荐

  1. python emoji 表情过滤

    http://my.oschina.net/jiemachina/blog/189460 注意替换的这些emoji是标准的表情字符,每个表情本来是2个字节,替换成字符串后,每个表情就变成12个字符了, ...

  2. 国内混合APP开发技术选型

    http://www.sunzhongwei.com/weex-react-native-ionic-technology-selection 选谁? 企业级应用是要考虑性能和流畅度的, 如果只是做个 ...

  3. SpringCloud Stream生产者配置RabbitMq的动态路由键

    在写这个文章前不得不吐槽目前国内一些blog的文章,尽是些复制粘贴的文章,提到点上但没任何的深入和例子.......... 经过测试下来总结一下RabbitMQ的Exchange的特性: 1.dire ...

  4. Matlab如何连接Oracle数据库及基本操作

    语言和语法都是相通的,了解Oracle的连接和处理,对于其他的数据库也是类似的. 一 通过ODBC实现到oracle的连接 )控制面板->管理工具->ODBC数据源->在系统DSN中 ...

  5. C语言判断文件夹或者文件是否存在的方法【转】

     C语言判断文件夹或者文件是否存在的方法   方法一:access函数判断文件夹或者文件是否存在 函数原型: int access(const char *filename, int mode); 所 ...

  6. 玩魔兽争霸无故退出 提示框显示"0x21101663"指令引用的"0x02704acc"内存该存不能为"read" 确定就会终止程序

    20151002总结:下方法试过,没完全按照说的操作完,觉得有风险且那个read程序执行时间好长的,感觉有点干坏事的意思 ======================================= ...

  7. 基于Centos搭建 Discuz 论坛

    系统要求:CentOS 6.8 64 位操作系统 搭建 Discuz 论坛 准备 LAMP 环境 LAMP 是 Linux.Apache.MySQL 和 PHP 的缩写,是 Discuz 论坛系统依赖 ...

  8. MXNET:权重衰减

    权重衰减是应对过拟合问题的常用方法. \(L_2\)范数正则化 在深度学习中,我们常使用L2范数正则化,也就是在模型原先损失函数基础上添加L2范数惩罚项,从而得到训练所需要最小化的函数. L2范数惩罚 ...

  9. Linux查看文件总的数据行数,并按行拆分

    先利用 wc -l BLM.txt       读出 BLM.txt 文件一共有多少行. 再 1. 以行数拆分 -l 参数: split –l 50 原始文件 拆分后文件名前缀 例:以50行对文件进行 ...

  10. Spring Session Redis

    http://www.infoq.com/cn/articles/Next-Generation-Session-Management-with-Spring-Session