详解Python流程控制语句
作者:kangyz 发布时间:2021-05-15 08:25:45
流程控制
流程:代码执行的过程
控制:对代码执行过程的把控
三大结构
顺序结构:代码默认从上到下,依次执行
分支结构:单项分支,双向分支,多项分支,巢状分支
循环结构: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可迭代性数据
容器类型数据
range对象
迭代器
range
range(开始值,结束值,步长)
区间为[开始值,结束值),为左闭右开区间,右边的结束值取不到
总结
while:一般用于处理复杂的逻辑关系
for:一般用于迭代数据
部分情况下两个循环可以互相转换
来源:https://www.cnblogs.com/kangyz/p/13866724.html


猜你喜欢
- 中间件中间件是放在客户端和服务端的中间。 当你的客户端对某个接口发起一个请求,但是在到达接口2之前,这里是有一层中间件的处理。一般
- 本文为大家分享了Windows下配置Python PyQt4开发环境的详细步骤,供大家参考,具体内容如下1. 下载相关软件Eclipse下载
- 代码如下:--程序员们在编写一个雇员报表,他们需要得到每个雇员当前及历史工资状态的信息, --以便生成报表。报表需要显示每个人的晋升日期和工
- scipy.optimize.curve_fit解读相比numpy库的多项式拟合函数polyfit,scipy.optimize模块中的函数
- 如下所示:# -*-coding:utf-8-*-from pandas import DataFrameimport pandas as
- 本文实例讲述了Python实现批量下载图片的方法。分享给大家供大家参考。具体实现方法如下:#!/usr/bin/env python#-*-
- 实现方法: 建立一个用户附加表InviteUser_NewUser,结构如下: 然后跟着我的思路走: 用户接这个链接后 =》 进
- 0. 前言周日在爬一个国外网站的时候,发现用协程并发请求,并且请求次数太快的时候,会出现对方把我的服务器IP封掉的情况。于是网上找了一下开源
- 最近一直在准备用来面试的几个小demo,为了能展现自己,所以都是亲自设计并实现的,其中一个就是在50行代码内来实现一个贪吃蛇,为了说明鄙人自
- 1.前言当我们创建Core项目的时候,Web根目录下会有个wwwroot文件目录,wwwroot文件目录里面默认有HTML、CSS、IMG、
- 第一步.开启mysql慢查询方式一:修改配置文件Windows:Windows 的配置文件为 my.ini,一般在 MySQL 的安装目录下
- 方案5 使用xml参数 对sql server xml类型参数不熟悉的童鞋需要先了解下XQuery概念,这里简单提下XQuery 是用来从
- JS高级 一、JS的数据类型 1.基本类型 JS共有5大基本类型,分别是: 1)Undefined。他只有一个值:undefined。如果一
- 本文实例讲述了django框架使用模板。分享给大家供大家参考,具体如下:models.py:from django.db import mo
- 第一个方法: MySQL 4.1 中文乱码的问题 最近要将 MySQL 4.0 升级到 MySQL 4.1 ,发现了中文乱码的问题,希望以下
- 简介提到爬虫,大部分人都会想到使用Scrapy工具,但是仅仅停留在会使用的阶段。为了增加对爬虫机制的理解,我们可以手动实现多线程的爬虫过程,
- 前言看到标题,大家就能想起这个需求在很多项目上都能用到。我们部署在Web服务器上的前端应用,既可以用PC浏览器访问,也可以用手机浏览器访问,
- 汉字转为拼音的asp函数,原理:利用多维数组 1.添加索引 2.遍历数组Author: Unknowasp之家测试截图,呵呵不错:<%
- 很多应用多需要处理文件,而处理文件有一个固定的模式:打开文件,读入一些数据,处理这些数据,打印到屏幕上或写入另一个文件。那么,如果我们想修改
- 特点python的作用域是静态的,在源代码中变量名被赋值的位置决定了该变量能被访问的范围。即Python变量的作用域由变量所在源代码中的位置