详解Python流程控制语句


Posted in Python onOctober 28, 2020

流程控制

  1. 流程:代码执行的过程
  2. 控制:对代码执行过程的把控

三大结构

  • 顺序结构:代码默认从上到下,依次执行
  • 分支结构:单项分支,双向分支,多项分支,巢状分支
  • 循环结构:while循环和for循环

单项分支

语句:

if 条件表达式:
    code1
    code2

当条件表达式成立时,返回True,执行对应的代码块

job = "programmer"
if job == "programmer":
   print("钱多")
   print("话少")
   print("*的早")

双向分支(二选一)

语句:

if 条件表达式:
    code1 ..
else:
    code2 ...

  • 如果条件表达式成立,返回True ,执行if这个区间的代码块
  • 如果条件表达式不成立,返回False,执行else这个区间的代码块
job = "programmer"
if job == "programmer":
   print("钱多")
   print("话少")
   print("*的早")
else:
   print("给你小红花儿~")

多项分支(多选一)

语句:

if 条件表达式1:
    code1
elif 条件表达式2:
    code2
elif 条件表达式3:
    code3
else:
    code4

  • 如果条件表达式1成立,执行对应分支的代码块code1,反之则判断条件表达式2是否成立
  • 如果条件表达式2成立,执行对应分支的代码块code2,反之则判断条件表达式3是否成立
  • 如果条件表达式3成立,执行对应分支的代码块code3,反之则执行else分支,到此程序执行完毕
money = False
car = False
house = False
if money == True:
   print("你是土豪么???")
elif car == True:
   print("你是有一辆蹦蹦嘛???")
elif house == True:
   print("你是什么房子啊?")
else:
   print("你是个好人~")

巢状分支

单项分支,双向分支,多项分支的互相嵌套组合

money = False
car = True
house = True
if money == True:
   print("你是土豪么???")
   if house == True:
      print("你是什么房子啊?")
      if car == True:
         print("你是有一辆蹦蹦嘛???")
      else:
         print("其实还可以~")
   else:
      print("感觉差点意思~")
else:
   print("你是个好人~")

循环结构

特点:

减少冗余代码,提升代码执行效率

语法:

while 条件表达式:
    code1

书写三部曲

  • 初始化一个变量
  • 书写循环条件
  • 添加自增/自减的值

案例1

# 打印1~100所有数字
i = 1
while i <= 100:
   print(i)
   i += 1

案例2

# 打印1~100的累加和
i = 0
total = 0
while i <= 100:
   total += i
   i += 1
print(total)

死循环

while True:
   print("死循环")

关键字的使用

pass(代码块中的占位符)

while True:
   pass

break(终止当前循环)

# 1~10,遇到5终止循环
i = 1
while i <= 10:
   print(i)
   if i == 5:
      break
   i += 1

container(跳过当前循环)

# 打印1~100中不含4的数字
i = 1
while i <= 100:
   strvar = str(i)
   if "4" in strvar:
      i += 1
      continue
   print(i)
   i += 1

for循环

循环/遍历/迭代,把容器中的元素一个个取出来

while的局限性

# Error
# setvar = {"a", "b", "c"}
# i = 0
# while i < len(setvar):
   # print(setvar[i])
   # i+=1

for循环的基本语法

for 变量 in Iterable:
    code1

Iterable

Iterable可迭代性数据

  1. 容器类型数据
  2. range对象
  3. 迭代器

range

range(开始值,结束值,步长)
区间为[开始值,结束值),为左闭右开区间,右边的结束值取不到

总结

  • while:一般用于处理复杂的逻辑关系
  • for:一般用于迭代数据
  • 部分情况下两个循环可以互相转换

以上就是详解Python流程控制语句的详细内容,更多关于Python流程控制语句的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
Aug 31 Python
opencv改变imshow窗口大小,窗口位置的方法
Apr 02 Python
JavaScript中的模拟事件和自定义事件实例分析
Jul 27 Python
mac PyCharm添加Python解释器及添加package路径的方法
Oct 29 Python
深入解析神经网络从原理到实现
Jul 26 Python
python GUI编程(Tkinter) 创建子窗口及在窗口上用图片绘图实例
Mar 04 Python
python中id函数运行方式
Jul 03 Python
浅谈如何使用python抓取网页中的动态数据实现
Aug 17 Python
Python如何实现机器人聊天
Sep 10 Python
PyQT5速成教程之Qt Designer介绍与入门
Nov 02 Python
python中把元组转换为namedtuple方法
Dec 09 Python
Python图片处理之图片裁剪教程
May 27 Python
详解selenium + chromedriver 被反爬的解决方法
Oct 28 #Python
手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年
Nov 25 #Python
Python字典实现伪切片功能
Oct 28 #Python
python使用selenium爬虫知乎的方法示例
Oct 28 #Python
怎么解决pycharm license Acti的方法
Oct 28 #Python
python如何快速拼接字符串
Oct 28 #Python
Python实现简单的猜单词小游戏
Oct 28 #Python
You might like
php 8小时时间差的解决方法小结
2009/12/22 PHP
WAMP环境中扩展oracle函数库(oci)
2015/06/26 PHP
PHP随机数函数rand()与mt_rand()的讲解
2019/03/25 PHP
JavaScript使用cookie
2007/02/02 Javascript
JavaScript 学习点滴记录
2009/04/24 Javascript
IE中radio 或checkbox的checked属性初始状态下不能选中显示问题
2009/07/25 Javascript
js各种验证文本框输入格式(正则表达式)
2010/10/22 Javascript
jQuery实现手机自定义弹出输入框
2016/06/13 Javascript
JavaScript中最容易混淆的作用域、提升、闭包知识详解(推荐)
2016/09/05 Javascript
Javascript使用SWFUpload进行多文件上传
2016/11/16 Javascript
学习vue.js中class与style绑定
2016/12/03 Javascript
AngularJS全局警告框实现方法示例
2017/05/18 Javascript
AngularJS使用ocLazyLoad实现js延迟加载
2017/07/05 Javascript
浅谈React中组件间抽象
2018/01/27 Javascript
Angular4 ElementRef的应用
2018/02/26 Javascript
全站最详细的Vuex教程
2018/04/13 Javascript
微信小程序如何刷新当前界面的实现方法
2019/06/07 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
2020/09/21 Javascript
JS如何实现在弹出窗口中加载页面
2020/12/03 Javascript
利用python批量修改word文件名的方法示例
2017/10/17 Python
selenium WebDriverWait类等待机制的实现
2020/03/18 Python
Python如何把Spark数据写入ElasticSearch
2020/04/18 Python
Python使用matplotlib绘制圆形代码实例
2020/05/27 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
GIVENCHY纪梵希官方旗舰店:高定彩妆与贵族护肤品
2018/04/16 全球购物
美国正宗设计师眼镜在线零售商:EYEZZ
2019/03/23 全球购物
台湾7-ELEVEN线上购物中心:7-11
2021/01/21 全球购物
Douglas意大利官网:购买香水和化妆品
2020/05/27 全球购物
公务员总结性个人自我评价
2013/12/05 职场文书
酒店总经理助理岗位职责
2014/02/01 职场文书
先进事迹演讲稿
2014/09/01 职场文书
2014广电局实施党的群众路线教育实践活动方案思想汇报
2014/09/22 职场文书
员工开除通知书
2015/04/25 职场文书
超级实用!五步法则,教你写好年终工作总结
2019/12/05 职场文书
django学习之ajax post传参的2种格式实例
2021/05/14 Python
Mysql数据库索引面试题(程序员基础技能)
2021/05/31 MySQL