【0基础入门Python Web笔记】二、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 Web笔记】二、python 之逻辑运算和制流程语句
二、python 之逻辑运算和制流程语句 逻辑运算控制流程语句条件语句(if语句)循环结构(for循环、while循环)continue、break和pass关键字控制流程语句的嵌套以及elif 更多实战项目可进入下方官网 逻辑运算 Python提供基本的逻辑运算…...
容器——Docker
1.安装docker服务,配置镜像加速器 2.下载系统镜像(Ubuntu、 centos) 3.基于下载的镜像创建两个容器 (容器名一个为自己名字全拼,一个为首名字字母) 4.容器的启动、 停止及重启操作 5.怎么查看正在运行的容器…...
SQL注入之宽字节注入
文章目录 宽字节注入是什么?注入练习让转义符失效联合查询 代码审计 宽字节注入是什么? 宽字节注入准确来说不是注入手法,而是另外一种比较特殊的情况。宽字节注入的目的是绕过单双引号转义。 宽字节注入是一种绕过单双引号转义的手段&#x…...
MyBatis动态sql
文章目录 一、MyBatis动态sql1.1 概述1.2 if元素1.3 foreach元素 二、模糊查询2.1 使用#{字段名}2.2 使用${字段名}2.3 使用concat{%,#{字段名},%}2.4 mybatis中#与$的区别 三、MyBatis结果映射3.1 区别3.2 应用场景 一、MyBatis动态sql 1.1 概述 MyBatis是一个Java持久化框架…...
L1-032 Left-pad 测试点全过
题目 根据新浪微博上的消息,有一位开发者不满NPM(Node Package Manager)的做法,收回了自己的开源代码,其中包括一个叫left-pad的模块,就是这个模块把javascript里面的React/Babel干瘫痪了。这是个什么样的…...
ssm+Vue.js在线购物系统源码和论文
ssmVue.js在线购物系统源码和论文049 开发工具:idea 数据库mysql5.7 数据库链接工具:navcat,小海豚等 技术:ssm 摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势…...
港联证券|指数或进入磨底阶段 短期关注环保、煤炭等板块
磨底历来都不是一天能达到的,比方2018年的政策底到商场底,半途也阅历两个多月时间。当下政策底出现之后至今也有近一个月时间,并且下跌量能不断缩短,心情面也降至冰点,种种迹象阐明离真正商场底的构成已经不远了。此时…...
pytorch 实现VGG
VGG全称是Visual Geometry Group,因为是由Oxford的Visual Geometry Group提出的。AlexNet问世之后,很多学者通过改进AlexNet的网络结构来提高自己的准确率,主要有两个方向:小卷积核和多尺度。而VGG的作者们则选择了另外一个方向&a…...
科技项目验收检测报告获取有哪些注意事项,作用都有哪些?
验收测试报告 软件从研发到结束是一个很长的周期,对于软件想要完成上市或者是交付到用户手中之前我们还需要进行一次全面检测,也就是科技项目验收测试,此测试有着严格的要求,需要第三方软件测评机构来完成,并出具科技…...
OceanBase:谁动了我得参数?
作者:郑增权 爱可生南区数据库工程师,爱可生 DBA 团队成员,负责数据库相关技术支持。爱好:桌球、羽毛球、咖啡、电影。 本文来源:原创投稿 爱可生开源社区出品,原创内容未经授权不得随意使用,转…...
Python快速入门体验
Python快速入门体验 一、环境信息1.1 硬件信息1.2 软件信息 二、Conda安装2.1 Conda介绍2.1.1 Conda简介2.1.2 Conda、Anaconda及Miniconda及的关系 2.2 Conda安装包下载2.2.1 Miniconda下载2.2.2 Anconda下载 2.3 Conda安装2.3.1 Miniconda安装2.3.2 Anconda安装 2.4 Conda初始…...
【从零学习python 】68. Python正则表达式中的贪婪和非贪婪模式
文章目录 贪婪和非贪婪模式进阶案例 贪婪和非贪婪模式 Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符; 非贪婪则相反,总是尝试匹配尽可能少的字符。 在*、?、、{m,n}后面…...
MongoDB【CRUD练习-条件查询-文档关系】
练习1-CRUD // 进入test数据库 use test; // 查询文档内容 db.students.find(); // 显示当前数据库中所有集合 show collections; // 向数据库的user集合中插入一个文档 db.users.insertOne({username: "lyh"} ); // 查看当前数据库中所有的集合 发现users集合被创建…...
使用M2Mqtt 接受以及发布MQTT消息
在NuGet库里面直接查找M2Mqtt就可以安装库。 使用framework4.5.2 1.配置文件操作 public static class GModel{public static BassSetup MainSetup { get; set; }public static void GetThisAdd(){MainSetup new BassSetup();string IPAdd ConfigurationManager.AppSettings…...
【SA8295P 源码分析】33 - Android GVM USB 透传配置
【SA8295P 源码分析】33 - Android GVM USB 透传配置 1. QNX 侧配置 USB1 为 GVM 使用2. Android 端配置 dts:以配置 USB1 为例3. QNX 端配置 linux-la.config:以配置 USB1 为例4. 在Android shell 中配置USB0 / USB1 的 Host/device 模式切换系列文章汇总见:《【SA8295P 源…...
华为OD机试 - 过滤组合字符串 - 深度优先搜索dfs算法(Java 2023 B卷 100分)
目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷B卷&#…...
【Unity自制手册】游戏基础API大全
👨💻个人主页:元宇宙-秩沅 👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨💻 本文由 秩沅 原创 👨💻 收录于专栏:Uni…...
【LVS】4、HAProxy搭建web集群
目前常见的Web集群调度器分为软件和硬件 软件通常使用开源的LVS、Haproxy、Nginx LVS性能最好(基于内核转发),但是搭建相对复杂;Nginx的upstream模块支持群集功能,但是对群集节点健康检查功能不强,高并发性…...
【应用层】网络基础 -- HTTP协议
再谈协议HTTP协议认识URLurlencode和urldecodeHTTP协议格式HTTP的方法HTTP的状态码HTTP常见HeaderHTTP周边会话保持 再谈协议 协议是一种 “约定”. socket api的接口,在读写数据时,都是按 “字符串” 的方式来发送接收的(tcp是以字节流的方式发送的&am…...
【线性DP】模型总结(terse版)
【线性DP】模型总结 最长上升子序列 DP法 dp[i]表示以i结尾的最长上升子序列的长度。 对于每个i,遍历j1~i-1,若a[j] < a[i], 则dp[i] max(dp[i], dp[j] 1); 二分法 可以优化时间复杂度。 dp[]数组用来存储当前最长上升子序列。 若dp[]数…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...
MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...
