【0基础入门Python笔记】二、python 之逻辑运算和制流程语句
二、python 之逻辑运算和制流程语句
- 逻辑运算
- 控制流程语句
- 条件语句(if语句)
- 循环结构(for循环、while循环)
- continue、break和pass关键字
- 控制流程语句的嵌套以及elif
逻辑运算
Python提供基本的逻辑运算:不仅包括布尔运算(and、or、not),还包括比较运算符(==、!=、<、>、<=、>=),用于比较两个值之间的关系。这些运算符用于判断表达式是否为真或为假,从而进行条件判断。
逻辑运算规则如下表所示(其中x=1,y=2):
| 运算符 | 描述 | 示例 | 结果 |
|---|---|---|---|
| and | 与运算 | True and False | False |
| or | 或运算 | True or False | True |
| not | 非运算 | not True | False |
| == | 等于 | x == y | False |
| != | 不等于 | x != y | True |
| < | 小于 | x < y | True |
| > | 大于 | x > y | False |
| <= | 小于等于 | x <= y | True |
| >= | 大于等于 | x >= y | False |
在python中我们可以通过一下代码来试下逻辑运算:
# 比较运算符示例
x = 1
y = 2# 逻辑与(and)
result_and = True and False # 结果为 False# 逻辑或(or)
result_or = True or False # 结果为 True# 逻辑非(not)
result_not = not True # 结果为 False# 等于:x是否等于y
result_equal = x == y # 结果为 False# 不等于:x是否不等于y
result_not_equal = x != y # 结果为 True# 小于:x是否小于y
result_less_than = x < y # 结果为 True# 大于:x是否大于y
result_greater_than = x > y # 结果为 False# 小于等于:x是否小于等于y
result_less_equal = x <= y # 结果为 True# 大于等于:x是否大于等于y
result_greater_equal = x >= y # 结果为 False
控制流程语句
对于新手小白来说熟练知道python控制流程语句包括条件语句(if语句)和循环结构(for循环和while循环),就够用了
条件语句(if语句)
条件语句用于根据不同的条件选择性地执行不同的代码块。最常见的条件语句是if语句,它用于判断一个条件是否为真,然后执行相应的代码。
以下是一个简单的if控制条件:

其对应的代码示例:
# 定义年龄变量
age = 18# 判断年龄是否大于等于18
if age >= 18:# 输出成年了print("成年了")
else:# 不满足if进入else输出未成年print("未成年")
循环结构(for循环、while循环)
- for循环
for循环用于遍历一个序列(如列表、字符串等)中的元素,并执行相应的操作。
# for循环 列表示例
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:print(fruit)
以上代码运行结果:

# for循环 字符串示例
fruit = 'apple'
for i in fruit:print(i)
以上代码运行结果:

也可以结合range()函数来进行数字的迭代:
# 使用range()的for循环
for i in range(5):# 这里会输出0,1,2,3,4print(i)
以上代码运行结果:

- while循环
while循环会重复执行一段代码,直到指定的条件不再满足。
# while循环示例
count = 0
while count < 5:print(count)count += 1
以上代码运行结果:

continue、break和pass关键字
- continue关键字用法
continue关键字跳过当前循环的剩余语句,进行下一轮循环
[‘apple’, ‘banana’, ‘orange’],这里面我不喜欢吃banana,所以我要跳过banana,通过continue关键字就可以实现,代码示例:
# for循环 continue示例
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:if fruit == 'banana':#如果fruit等于banana就跳过continueprint(fruit)
以上代码运行结果:

- break关键字用法
break关键字用来终止循环语句,强制停止当前的循环结构。
[‘apple’, ‘banana’, ‘orange’],这里面我非常讨厌banana,遇到banana,后面的全部都不想要啦!可以通过break关键字来实现,代码示例:
# for循环 break示例
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:if fruit == 'banana':#如果fruit等于banana就结束breakprint(fruit)
以上代码运行结果:

- pass关键字用法
充当代码块的占位符,如果还没想好怎么处理banana,我们就可以先放个占位符,代码示例:
# for循环 pass示例
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:if fruit == 'banana':# 如果fruit等于banana就啥也不干passprint(fruit)
以上代码运行结果:

小伙伴想问,如果不放pass会怎么样,会语法错误!因为 : 后面表示新的下一级代码块,必须要有点东西,这个时候就可以用pass占位置啦。
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:if fruit == 'banana':print(fruit)

控制流程语句的嵌套以及elif
这里我们有一个需求,18岁以上输出成年,18岁以下输出未成年,3岁以下输出小屁孩。
- 方案一:嵌套控制
我们可以将需求理解成一下流程图:

其对应的代码示例:
# 定义年龄变量
age = 2# 判断年龄是否大于等于18
if age >= 18:# 输出成年了print("成年了")
else:# 不满足if进入else输出未成年if age <= 3:print("小屁孩")else:print("未成年")
其代码运行结果就是:小屁孩
- 方案二:引入elif概念
elif的作用是当if语句的条件为假时,检查下一个条件是否为真,如果为真则执行相应的代码块,否则继续检查下一个条件或执行else块中的代码(如果有的话)。

根据上面需求,示例代码:
# 定义年龄变量
age = 2# 判断年龄是否大于等于18
if age >= 18:# 输出成年了print("成年了")
elif age <= 3:print("小屁孩")
else:print("未成年")
在代码示例中:
- 如果年龄大于等于18,会输出:“成年了”
- 如果年龄小于等于3,会输出:“小屁孩”
- 如果年龄既不大于等于18,也不小于等于3,会输出:“未成年”
其代码运行结果就是:小屁孩
相关文章:
【0基础入门Python笔记】二、python 之逻辑运算和制流程语句
二、python 之逻辑运算和制流程语句 逻辑运算控制流程语句条件语句(if语句)循环结构(for循环、while循环)continue、break和pass关键字控制流程语句的嵌套以及elif 逻辑运算 Python提供基本的逻辑运算:不仅包括布尔运…...
python中的svm:介绍和基本使用方法
python中的svm:介绍和基本使用方法 支持向量机(Support Vector Machine,简称SVM)是一种常用的分类算法,可以用于解决分类和回归问题。SVM通过构建一个超平面,将不同类别的数据分隔开,使得正负样…...
typedef
t y p e d e f typedef typedef 声明,简称typedef,是创建现有类型的新名字。 比如: #include <bits/stdc.h> using namespace std; typedef long long ll; int main() {ll n;scanf("%lld",&n);printf("%lld"…...
校园跑腿市场行情分析
随着社会的发展和人们生活节奏的加快,校园跑腿市场逐渐兴起并呈现出蓬勃发展的态势。在这个快节奏的时代,越来越多的学生需要在繁忙的学业之外完成各种任务,而校园跑腿服务正是应运而生,为他们提供了便利和时效。本文将从需求方面…...
微服务相关面试题
👏作者简介:大家好,我是爱写博客的嗯哼,爱好Java的小菜坤 🔥如果感觉博主的文章还不错的话,请👍三连支持👍一下博主哦 📝社区论坛:希望大家能加入社区共同进步…...
前端-ES6
let 和 const 为了解决var的作用域的问题,而且var 有变量提升,会出现全局污染的问题 let 块状作用域,并且不能重复声明const 一般用于声明常量,一旦被声明无法修改,但是const 可以声明一个对象,对象内部的…...
169. 多数元素(摩尔投票法) 题解
题目描述:169. 多数元素 - 力扣(LeetCode) 给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示…...
python中的cnn:介绍和基本使用方法
python中的cnn:介绍和基本使用方法 卷积神经网络(Convolutional Neural Networks,简称CNN)是一种在图像识别、语音识别、自然语言处理等许多领域取得显著成功的深度学习模型。CNN的设计灵感来源于生物的视觉系统,由多…...
Dockerfile概念、镜像原理、制作及案例讲解
1.Docker镜像原理 Linux文件操作系统讲解 2.镜像如何制作 3.Dockerfile概念 Docker网址:https://hub.docker.com 3.1 Dockerfile关键字 4.案例...
07-微信小程序-注册页面-模块化
07-微信小程序-注册页面 文章目录 注册页面使用 Page 构造器注册页面参数Object初始数据案例代码 生命周期回调函数组件事件处理函数setData()案例代码 生命周期模块化 注册页面 对于小程序中的每个页面,都需要在页面对应的 js 文件中进行注册,指定页面…...
考研算法第46天: 字符串转换整数 【字符串,模拟】
题目前置知识 c中的string判空 string Count; Count.empty(); //正确 Count ! null; //错误c中最大最小宏 #include <limits.h>INT_MAX INT_MIN 字符串使用发运算将字符加到字符串末尾 string Count; string str "liuda"; Count str[i]; 题目概况 AC代码…...
Cesium for unity 1.5.0使用注意事项
Cesium for Unity Quickstart – Cesium 1.Unity版本仅支持Unity2021.3.2f1以后版 2.仅支持 3D (URP)和3D (HDRP)渲染管线 3.如果Package Manager中不出现My Registries选项,请在 Edit > Project Settings...>Package Manager中重命名或删除重新添加Packag…...
初阶C语言-结构体
🌞 “少年有梦不至于心动,更要付诸行动。” 今天我们一起学习一下结构体的相关内容! 结构体 🎈1.结构体的声明1.1结构的基础知识1.2结构的声明1.3结构成员的类型1.4结构体变量的定义和初始化 🎈2.结构体成员的访问2.1结…...
Android Studio实现解析HTML获取图片URL,将URL存到list,进行瀑布流展示
目录 效果展示build.gradle(app)添加的依赖(用不上的可以不加)AndroidManifest.xml错误代码activity_main.xmlitem_image.xmlMainActivityImage适配器ImageModel 接收图片URL效果展示 build.gradle(app)添加的依赖(用不上的可以不加) dependencies {implementation co…...
java学习004
常用数据结构对应 php中常用的数据结构是Array数组,相对的在java开发中常用的数据结构是ArrayList和HashMap,它们可以看成是array的拆分,一种简单的对应关系为 PHPJAVAArray: array(1,2,3)ArrayListlArray: array(“name” > “jack”,“…...
Linux网络编程:网络基础
文章目录: 1.协议 2.锁 3.网络层次模型 4.以太网帧和ARP协议 5.IP协议 6.UDP协议 7.TCP协议 8.BS模式和CS模式 9.网络套接字(socket) 10.网络字节序 11.IP地址转换函数 12.sockaddr地址结构 学习Linux的网络编程原则上基于:Linux的系统编程…...
3D沉浸式旅游网站开发案例复盘【Three.js】
Plongez dans Lyon网站终于上线了。 我们与 Danka 团队和 Nico Icecream 共同努力,打造了一个令我们特别自豪的流畅的沉浸式网站。 这个网站是专为 ONLYON Tourism 和会议而建,旨在展示里昂最具标志性的活动场所。观看简短的介绍视频后,用户…...
IO的几个模型
I/O模型名词介绍 说到I/O模型,都会牵扯到同步、异步、阻塞、非阻塞这几个词,以下讲解这几个词的概念。 阻塞和非阻塞 阻塞和非阻塞指的是一直等还是可以去做其他事。 阻塞(blocking):调用结果返回之前,…...
中路对线发现正在攻防演练中投毒的红队大佬
背景 2023年8月14日晚,墨菲安全实验室发布《首起针对国内金融企业的开源组件投毒攻击事件》NPM投毒事件分析文章,紧接着我们在8月17日监控到一个新的npm投毒组件包 hreport-preview,该投毒组件用来下载木马文件的域名地址竟然是 img.murphys…...
【LINUX相关】生成随机数(srand、/dev/random 和 /dev/urandom )
目录 一、问题背景二、修改方法2.1 修改种子2.2 使用linux中的 /dev/urandom 生成随机数 三、/dev/random 和 /dev/urandom 的原理3.1 参考连接3.2 重难点总结3.2.1 生成随机数的原理3.2.2 随机数生成器的结构3.2.3 二者的区别和选择 四、在代码的使用方法 一、问题背景 在一个…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...
Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
Linux基础开发工具——vim工具
文章目录 vim工具什么是vimvim的多模式和使用vim的基础模式vim的三种基础模式三种模式的初步了解 常用模式的详细讲解插入模式命令模式模式转化光标的移动文本的编辑 底行模式替换模式视图模式总结 使用vim的小技巧vim的配置(了解) vim工具 本文章仍然是继续讲解Linux系统下的…...
Copilot for Xcode (iOS的 AI辅助编程)
Copilot for Xcode 简介Copilot下载与安装 体验环境要求下载最新的安装包安装登录系统权限设置 AI辅助编程生成注释代码补全简单需求代码生成辅助编程行间代码生成注释联想 代码生成 总结 简介 尝试使用了Copilot,它能根据上下文补全代码,快速生成常用…...
用js实现常见排序算法
以下是几种常见排序算法的 JS实现,包括选择排序、冒泡排序、插入排序、快速排序和归并排序,以及每种算法的特点和复杂度分析 1. 选择排序(Selection Sort) 核心思想:每次从未排序部分选择最小元素,与未排…...
