Python条件循环控制语句

2023-05-16

Python 条件语句

通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。
Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

Python 编程中 if 语句用于控制程序的执行,基本形式为:

if 判断条件:
     执行语句……
else:
     执行语句……

实例:

flag = False
name = 'luren'
if name == 'python':  # 判断变量是否为 python
    flag = True  # 条件成立时设置标志为真
    print('welcome boss')  # 并输出欢迎信息
else:
    print(name)  # 条件不成立时输出变量名称
#输出结果:luren

if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。
当判断条件为多个值时,可以使用以下形式:

 if 判断条件1:
     执行语句1……
 elif 判断条件2:
     执行语句2……
 elif 判断条件3:
     执行语句3……
 else:
     执行语句4……

实例:

print("条件语句=======================================")
num = 5
if num == 3:            # 判断num的值
    print('boss')
elif num == 2:
    print ('user')
elif num == 1:
    print ('worker')
elif num < 0:           # 值小于零时输出
    print ('error')
else:
    print ('roadman')     # 条件均不成立时输出
#输出结果:roadman

由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,
如果判断需要多个条件同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;
使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。
实例:

num = 9
if num >= 0 and num <= 10:  # 判断值是否在0~10之间
    print('hello')
 # 输出结果: hello

num = 10
if num < 0 or num > 10:  # 判断值是否在小于0或大于10
     print('hello')
else:
     print('undefine')
# 输出结果: undefine
# num = 8

实例:判断值是否在0-5或者10-15之间

if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):
    print('hello')
else:
    print('undefine')
 # 输出结果: undefine

当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,
此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。

Python 循环语句

Python 提供了 for 循环和 while 循环(在 Python 中没有 do…while 循环):

循环类型 描述
while循环 在给定的判断条件为 true 时执行循环体,否则退出循环体。
for循环 重复执行语句
嵌套循环 你可以在while循环体中嵌套for循环

循环控制语句

循环控制语句可以更改语句执行的顺序。Python支持以下循环控制语句:

控制语句 描述
break语句 在语句块执行过程中终止循环,并且跳出整个循环
continue语句 在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。

pass语句

pass是空语句,是为了保持程序结构的完整性。

Python While 循环语句

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:

while 判断条件(condition):
     执行语句(statements)……

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假 false 时,循环结束。
实例:

print("while循环=======================================")
count = 0
while (count < 9):
    print ('The count is:', count)
    count = count + 1
#输出结果:
#The count is: 0
#The count is: 1
#The count is: 2
#The count is: 3
#The count is: 4
#The count is: 5
#The count is: 6
#The count is: 7
#The count is: 8

Python for 循环语句

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
语法:

for循环的语法格式如下:

 for iterating_var in sequence:
     statements(s)

实例:

print("for循环=======================================")
for letter in 'Python':  # 第一个实例
    print("当前字母: %s" % letter)
#输出结果:
#当前字母: P
#当前字母: y
#当前字母: t
#当前字母: h
#当前字母: o
#当前字母: n
fruits = ['banana', 'apple', 'mango']
for fruit in fruits:  # 第二个实例
    print('当前水果: %s' % fruit)
#输出结果:
#当前水果: banan
#当前水果: apple
#当前水果: mango

通过序列索引迭代

另外一种执行循环的遍历方式是通过索引,如下实例:

实例:

print("for循环通过序列索引迭代=======================================")
fruits = ['banana', 'apple', 'mango']
for index in range(len(fruits)):
    print('当前水果 : %s' % fruits[index])
#输出结果:
#当前水果: banan
#当前水果: apple
#当前水果: mango    

Python 循环嵌套

Python 语言允许在一个循环体里面嵌入另一个循环。

Python for 循环嵌套语法:

for iterating_var in sequence:
    for iterating_var in sequence:
        statements(s)
    statements(s)

Python while 循环嵌套语法:

while expression:
    while expression:
       statement(s)
    statement(s)

你可以在循环体内嵌入其他的循环体,如在while循环中可以嵌入for循环, 反之,你可以在for循环中嵌入while循环。
实例:使用了嵌套循环输出2~100之间的素数:

print("Python 循环嵌套=======================================")
i = 2
while (i < 50):
    j = 2
    while (j <= (i / j)):
        if not (i % j): break
        j = j + 1
    if (j > i / j): print (i, " 是素数")
    i = i + 1
#输出结果:
#2  是素数
#3  是素数
#5  是素数
#7  是素数
#11  是素数
#13  是素数
#17  是素数
#19  是素数
#23  是素数
#29  是素数
#31  是素数
#37  是素数
#41  是素数
#43  是素数
#47  是素数

Python break语句

Python break语句,就像在C语言中,打破了最小封闭for或while循环。
break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。
break语句用在while和for循环中。
如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。
实例:

print("Python break语句=======================================")
for letter in 'Python':  # 第一个实例
    if letter == 'h':
        break
    print ('当前字母 :', letter)
#输出结果:
#当前字母 : P
#当前字母 : y
#当前字母 : t

var = 10  # 第二个实例
while var > 0:
    print ('当前变量值 :', var)
    var = var - 1
    if var == 5:  # 当变量 var 等于 5 时退出循环
        break
#输出结果:
#当前变量值 : 10
#当前变量值 : 9
#当前变量值 : 8
#当前变量值 : 7
#当前变量值 : 6

Python continue 语句

Python continue 语句跳出本次循环,而break跳出整个循环。
continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。
continue语句用在while和for循环中。
实例:

print("Python continue语句=======================================")
for letter in 'Python':  # 第一个实例
    if letter == 'h':
        continue
    print('当前字母 :', letter)
#输出结果:
#当前字母 : P
#当前字母 : y
#当前字母 : t
#当前字母 : o
#当前字母 : n
var = 10  # 第二个实例
while var > 0:
     var = var - 1
     if var == 5:
         continue
     print('当前变量值 :', var)
#输出结果:
#当前变量值 : 9
#当前变量值 : 8
#当前变量值 : 7
#当前变量值 : 6
#当前变量值 : 4
#当前变量值 : 3
#当前变量值 : 2
#当前变量值 : 1
#当前变量值 : 0

Python pass 语句

Python pass 是空语句,是为了保持程序结构的完整性。
pass 不做任何事情,一般用做占位语句。
输出 Python 的每个字母
实例:

print("Python Pass语句=======================================")
for letter in 'Python':
   if letter == 'h':
      pass
      print ('这是 pass 块')
   print ('当前字母 :', letter)
#输出结果
#当前字母 : P
#当前字母 : y
#当前字母 : t
#这是 pass 块
#当前字母 : h
#当前字母 : o
#当前字母 : n

参考:菜鸟教程

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python条件循环控制语句 的相关文章

  • 使用 openCV 对图像中的子图像进行通用检测

    免责声明 我是计算机视觉菜鸟 我看过很多关于如何在较大图像中查找特定子图像的堆栈溢出帖子 我的用例有点不同 因为我不希望它是具体的 而且我不确定如何做到这一点 如果可能的话 但我感觉应该如此 我有大量图像数据集 有时 其中一些图像是数据集的
  • 如何使用固定的 pandas 数据框进行动态 matplotlib 绘图?

    我有一个名为的数据框benchmark returns and strategy returns 两者具有相同的时间跨度 我想找到一种方法以漂亮的动画风格绘制数据点 以便它显示逐渐加载的所有点 我知道有一个matplotlib animat
  • DreamPie 不适用于 Python 3.2

    我最喜欢的 Python shell 是DreamPie http dreampie sourceforge net 我想将它与 Python 3 2 一起使用 我使用了 添加解释器 DreamPie 应用程序并添加了 Python 3 2
  • 导入错误:没有名为 _ssl 的模块

    带 Python 2 7 的 Ubuntu Maverick 我不知道如何解决以下导入错误 gt gt gt import ssl Traceback most recent call last File
  • Flask 和 uWSGI - 无法加载应用程序 0 (mountpoint='')(找不到可调用或导入错误)

    当我尝试使用 uWSGI 启动 Flask 时 出现以下错误 我是这样开始的 gt cd gt root localhost uwsgi socket 127 0 0 1 6000 file path to folder run py ca
  • 更改自动插入 tkinter 小部件的文本颜色

    我有一个文本框小部件 其中插入了三条消息 一条是开始消息 一条是结束消息 一条是在 单位 被摧毁时发出警报的消息 我希望开始和结束消息是黑色的 但被毁坏的消息 参见我在代码中评论的位置 插入小部件时颜色为红色 我不太确定如何去做这件事 我看
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • Python 中的二进制缓冲区

    在Python中你可以使用StringIO https docs python org library struct html用于字符数据的类似文件的缓冲区 内存映射文件 https docs python org library mmap
  • 在pyyaml中表示具有相同基类的不同类的实例

    我有一些单元测试集 希望将每个测试运行的结果存储为 YAML 文件以供进一步分析 YAML 格式的转储数据在几个方面满足我的需求 但测试属于不同的套装 结果有不同的父类 这是我所拥有的示例 gt gt gt rz shorthand for
  • python 集合可以包含的值的数量是否有限制?

    我正在尝试使用 python 设置作为 mysql 表中 ids 的过滤器 python集存储了所有要过滤的id 现在大约有30000个 这个数字会随着时间的推移慢慢增长 我担心python集的最大容量 它可以包含的元素数量有限制吗 您最大
  • Geopandas 设置几何图形:MultiPolygon“等于 len 键和值”的 ValueError

    我有 2 个带有几何列的地理数据框 我将一些几何图形从 1 个复制到另一个 这对于多边形效果很好 但对于任何 有效 多多边形都会返回 ValueError 请指教如何解决这个问题 我不知道是否 如何 为什么应该更改 MultiPolygon
  • HTTPS 代理不适用于 Python 的 requests 模块

    我对 Python 还很陌生 我一直在使用他们的 requests 模块作为 PHP 的 cURL 库的替代品 我的代码如下 import requests import json import os import urllib impor
  • 循环中断打破tqdm

    下面的简单代码使用tqdm https github com tqdm tqdm在循环迭代时显示进度条 import tqdm for f in tqdm tqdm range 100000000 if f gt 100000000 4 b
  • Nuitka 未使用 nuitka --recurse-all hello.py [错误] 编译 exe

    我正在尝试通过 nuitka 创建一个简单的 exe 这样我就可以在我的笔记本电脑上运行它 而无需安装 Python 我在 Windows 10 上并使用 Anaconda Python 3 我输入 nuitka recurse all h
  • 如何在 Django 中使用并发进程记录到单个文件而不使用独占锁

    给定一个在多个服务器上同时执行的 Django 应用程序 该应用程序如何记录到单个共享日志文件 在网络共享中 而不保持该文件以独占模式永久打开 当您想要利用日志流时 这种情况适用于 Windows Azure 网站上托管的 Django 应
  • 设置 torch.gather(...) 调用的结果

    我有一个形状为 n x m 的 2D pytorch 张量 我想使用索引列表来索引第二个维度 可以使用 torch gather 完成 然后然后还设置新值到索引的结果 Example data torch tensor 0 1 2 3 4
  • 如何从没有结尾的管道中读取 python 中的 stdin

    当管道来自 打开 时 不知道正确的名称 我无法从 python 中的标准输入或管道读取数据 文件 我有作为例子管道测试 py import sys import time k 0 try for line in sys stdin k k
  • 用于运行可执行文件的python多线程进程

    我正在尝试将一个在 Windows 上运行可执行文件并管理文本输出文件的 python 脚本升级到使用多线程进程的版本 以便我可以利用多个核心 我有四个独立版本的可执行文件 每个线程都知道要访问它们 这部分工作正常 我遇到问题的地方是当它们
  • 循环标记时出现“ValueError:无法识别的标记样式 -d”

    我正在尝试编码pyplot允许不同标记样式的绘图 这些图是循环生成的 标记是从列表中选取的 为了演示目的 我还提供了一个颜色列表 版本是Python 2 7 9 IPython 3 0 0 matplotlib 1 4 3 这是一个简单的代
  • Pandas 与 Numpy 数据帧

    看这几行代码 df2 df copy df2 1 df 1 df 1 values 1 df2 ix 0 0 我们的教练说我们需要使用 values属性来访问底层的 numpy 数组 否则我们的代码将无法工作 我知道 pandas Data

随机推荐

  • 回文串 leetcode

    1 125 验证回文串 给定一个字符串 xff0c 验证它是否是回文串 xff0c 只考虑字母和数字字符 xff0c 可以忽略字母的大小写 说明 xff1a 本题中 xff0c 我们将空字符串定义为有效的回文串 示例 1 输入 34 A m
  • 回溯法 题目 leetcode

    1 22 括号生成 数字 n 代表生成括号的对数 xff0c 请你设计一个函数 xff0c 用于能够生成所有可能的并且 有效的 括号组合 示例 xff1a 输入 xff1a n 61 3 输出 xff1a 34 34 34 34 34 34
  • 买卖股票系列问题 Leetcode题目

    leetcode 刷题记录 一 买卖股票系列问题 1 121 买卖股票的最佳时机 给定一个数组 xff0c 它的第 i 个元素是一支给定股票第 i 天的价格 如果你最多只允许完成一笔交易 xff08 即买入和卖出一支股票一次 xff09 x
  • 区间问题 LeetCode

    表示重点复习题 xff0c 没做出来 区间问题 1 56 合并区间 给出一个区间的集合 xff0c 请合并所有重叠的区间 示例 1 输入 intervals 61 1 3 2 6 8 10 15 18 输出 1 6 8 10 15 18 解
  • 网格DFS LeetCode

    岛屿问题 DFS 200 岛屿数量 给你一个由 1 xff08 陆地 xff09 和 0 xff08 水 xff09 组成的的二维网格 xff0c 请你计算网格中岛屿的数量 岛屿总是被水包围 xff0c 并且每座岛屿只能由水平方向和 或竖直
  • 括号题目 Leetcode

    括号系列问题 Leetcode 20 有效的括号 给定一个只包括 39 39 xff0c 39 39 xff0c 39 39 xff0c 39 39 xff0c 39 39 xff0c 39 39 的字符串 s xff0c 判断字符串是否有
  • 回溯 组合 排列 生成 LeetCode

    回溯 组合 排列 生成 算法题目 77 组合 给定两个整数 n 和 k xff0c 返回 1 n 中所有可能的 k 个数的组合 示例 输入 n 61 4 k 61 2 输出 2 4 3 4 2 3 1 2 1 3 1 4 解法1 回溯 递归
  • Centos 7安装Python3环境

    目录 1 安装依赖环境2 下载Python压缩包3 解压Python压缩包4 编译安装4 1 编译前安装相关软件4 2 创建安装目录4 3 生成编译脚本4 4 编译和安装4 5 检查 5 建立软链接6 设置Python3的环境变量6 1 设
  • Linux命令c++filt

    一个简单的linux命令 xff0c 确实不值得大费周折 xff0c 但是 xff0c 在实际的开发过程中 xff0c 却帮助很大 xff0c 在编译cgi xff0c 修改函数的调用之后获得函数的符号名 xff0c 就可以看到这个函数的定
  • 子序列 子数组问题 Leetcode

    子序列 子数组问题 53 最大子序和 给定一个整数数组 nums xff0c 找到一个具有最大和的连续子数组 xff08 子数组最少包含一个元素 xff09 xff0c 返回其最大和 示例 1 xff1a 输入 xff1a nums 61
  • 用devstack快速部署 openstack

    本人openstack小白一名 xff0c 在部署openstack时出现了很多不可逾越的错误 xff0c 只好借助于工具 在用devstack安装openstack之前 xff0c 先用的openshit进行安装 但是出现了无法连接数据库
  • Debain 10安装使用中文输入法

    Debain 10安装使用中文输入法 近来因工作需要 xff0c 需在虚拟机上搭建服务 xff0c 公司虚拟机上用的是Debain系统 xff0c 在使用的过程中觉着没有中文输入法极其不爽 xff0c 于是按照网上多篇教程一步步尝试至最终切
  • 【算法题】素数伴侣-用匈牙利算法解决二分图匹配问题

    描述 输入一个字符串 xff0c 内容是一个不重复的整数数组 若数组中两个数相加为素数 xff0c 那么这两个数可以配对 xff0c 即素数伴侣 一个数字只能配对一次 输出最大配对数 示例 输入 xff1a 4 2 5 6 13 输出 xf
  • MAX30102

    include 34 myiic h 34 include 34 delay h 34 初始化IIC void IIC Init void GPIO InitTypeDef GPIO InitStructure RCC gt APB2ENR
  • linux系统开机自动挂载分区

    以挂载分区 dev sdb1为例 1 查看所有的分区 xff1a sudo fdisk l 1 修改分区类型 fdisk dev sdb 输入m可以查看帮助 xff0c 修改分区类型需要使用t命令 xff0c 并输入分区类型标号 2 查看分
  • Python文件处理相关函数

    文件 xff0c 文件夹 xff0c 压缩包处理模块模块 shutil模块 引入 xff1a import shutil shutil是对OS中文件操作的补充 xff1a 移动 复制 打包 压缩 解压 1 copy文件内容到另一个文件 xf
  • Python多线程

    线程的创建 加入 锁 待补充完善
  • noVNC压缩包下载

    1 浏览器器输入地址 Git地址 xff1a GitHub Where the world builds software GitHub https github com 2 搜索noVNC 3 选择novnc noVNC 4 点击发行版本
  • Python数据类型(结构)

    Python复合数据类型之一 列表 即写在方括号之间 用逗号隔开的数值列表 列表内的数值不必全是相同的类型 list1 span class token operator 61 span span class token punctuati
  • Python条件循环控制语句

    Python 条件语句 通过一条或多条语句的执行结果 xff08 True或者False xff09 来决定执行的代码块 Python程序语言指定任何非0和非空 xff08 null xff09 值为true xff0c 0 或者 null