第3章:python的判断语句

学一门语言,无外乎多敲,多用,记得回顾昨天写过的代码呀

image-20230912195841047

image-20230912195948856

布尔类型和比较运算符

image-20230912200122647

image-20230912200212544

布尔类型的定义

image-20230912200311732

使用比较运算符进行比较运算得到布尔类型的结果

image-20230912200420625

比较运算符

image-20230912201848032

"""
演示布尔类型的定义
以及比较运算符的应用
​
"""
#定义变量存储布尔类型的数据
bool_1=True
bool_2=False
print(f"bool_1变量的内容是:{bool_1},类型是{type(bool_1)}")
print(f"bool_2变量的内容是:{bool_2},类型是{type(bool_2)}")

image-20230912202734027

"""
演示布尔类型的定义
以及比较运算符的应用
​
"""
#定义变量存储布尔类型的数据
bool_1=True
bool_2=False
print(f"bool_1变量的内容是:{bool_1},类型是{type(bool_1)}")
print(f"bool_2变量的内容是:{bool_2},类型是{type(bool_2)}")
​
​
​
#比较运算符的使用
# ==,!=,>,<,>=,<=
#演示进行内容的相等比较
num1 =  10
num2 = 10
print(f"10=10的结果是:{num1==num2}")
​
num1=10
num2=15
print(f"10!=15的结果是{num1!=num2}")
​
name1="itcase"
name2="chy"
print(f"itcase == chy的结果是:{name1==name2}")
​
#演示下小于大于,小于等于,大于等于的比较运算
num1=5
num2=10
print(f"10>5的结果是:{num1<num2}")
​
num1=10
num2=5
print(f"5<10的结果是:{num2<num1}")
​
num1=10
num2=10
print(f"10>=10的结果是:{num1>=num2}")
print(f"10<=10的结果是:{num1<=num2}")

image-20230913164552639

image-20230913164659716

if语句的基本格式

image-20230913164943487

python通过空格缩进,来判断归属

image-20230913165155363

注意:if判断语句的下一个语句后第一个语句要有4个空格,以此来判断归属

"""
演示Python判断语句:if语句的基本格式应用
​
"""
​
age=30
if age>=18:
    print("我已经成年了")
    print("即将步入大学生活")
​
print("时间过的真快呀")

image-20230913165937141

若将age=30改为age=10

image-20230913170024259

这就说明if有严格的缩进。

image-20230913170229082

image-20230913170254995

image-20230913170342132

练习题1

image-20230913170456186

"""
演示练习题:判断是否是成人
​
"""
​
#获取键盘输入
#age= input("请输入你的年龄")#input输入的内容是字符串,需要将其转换为数字类型,用以下代码
age = int(input("请输入你的年龄:"))
#通过if语句进行判断
if age>=18:
    print("您已成年,游玩需要买票:10元")
print("祝您游玩愉快")

image-20230913171347700

注意:1.input输入的是字符串,判断的时候需要转换成int数字类型

2.判断语句的结果必须是Ture或者False的类型,当是ture时候会执行

3.严格的四个空格不能少

if else语句

image-20230918171943065

image-20230918172028974

"""
演示Python中
if else的组合判断语句
"""
​
age = int(input("亲输入你的年龄:"))
if age >= 18:
    print("您已成年,需要买票10元。")
else:
    print("您未成年,可以年费游玩。")
print("祝您玩的愉快")

image-20230918172829518

image-20230918172904509

image-20230918172944347

练习题2

image-20230918173034907

"""
演示根据身高来确定是否买票
"""
print("欢迎来到黑马动物园")
#定义键盘输入获取身高数据
height = int(input("请输入您的身高:"))
#通过if进行判断
if height>120:
    print("您的身高超过120cm,游玩需要购票10元")
else:
    print("您的身高未超出120cm,可以免费游玩。")
print("祝您游玩愉快。")

image-20230918173931543

if-elif-else语句

image-20230918174205620

image-20230918174354282

image-20230918174450251

"""
演示if elif else 语句
​
"""
print("欢迎来到我的博客世界")
height = int(input("请输入您的身高(cm):"))
vip_level=int(input("请输入您的vip级别(1~5):"))
#通过if判断,可以使用多条件判断的语法
#第一个条件就是if
#满足其中一个条件,就可以输出,若满足第一个条件,而不满足第2个条件,也会输出第一个条件下的输出
if height < 120:
    print("您的身高小于120cm,可以免费游玩")
elif vip_level > 3:
    print("您的vip级别大于3,可以免费游玩。")
else:
    print("不好意思,所有条件都不满足,需要购票10元。")
print("祝您游玩愉快")

image-20230918225034746

当两个条件都不满足时候,会有不满足的提示

image-20230918225340960

很明显满足了第一个条件,再次满足第二个条件时,不会进行判断输出,故当第一个判断满足条件时,第二个elif就没有用处了,即是多条件判断时,条件之间是互斥的,if满足条件,elif就没有用了

再添加一个判断条件

image-20230918225720394

"""
演示if elif else 语句
​
"""
print("欢迎来到我的博客世界")
height = int(input("请输入您的身高(cm):"))
vip_level=int(input("请输入您的vip级别(1~5):"))
day = int(input("请告诉我今天几号:"))
#通过if判断,可以使用多条件判断的语法
#第一个条件就是if
#满足其中一个条件,就可以输出,若满足第一个条件,而不满足第2个条件,也会输出第一个条件下的输出
if height < 120:
    print("您的身高小于120cm,可以免费游玩")
elif vip_level > 3:
    print("您的vip级别大于3,可以免费游玩。")
elif day==1
    print("今天是1号免费日,可以免费")
else:
    print("不好意思,所有条件都不满足,需要购票10元。")
print("祝您游玩愉快")

image-20230918230105975

当前两个条件都不满足时,如果满足第3个条件,也可以输出

即当第一个if满足时候,剩下两个判断就没有用了,当第二个判断满足时候,第三个就没有用了,即是所有的判断条件只有一个能被执行

image-20230918230420323

下面注释掉最后一个else

"""
演示if elif else 语句

"""
print("欢迎来到我的博客世界")
height = int(input("请输入您的身高(cm):"))
vip_level=int(input("请输入您的vip级别(1~5):"))
day = int(input("请告诉我今天几号:"))
#通过if判断,可以使用多条件判断的语法
#第一个条件就是if
#满足其中一个条件,就可以输出,若满足第一个条件,而不满足第2个条件,也会输出第一个条件下的输出
if height < 120:
    print("您的身高小于120cm,可以免费游玩")
elif vip_level > 3:
    print("您的vip级别大于3,可以免费游玩。")
elif day ==1:
    print("今天是1号免费日,可以免费")
#else:
#   print("不好意思,所有条件都不满足,需要购票10元。")
print("祝您游玩愉快")

image-20230918230604356

对应输出结果如上,也就是说没有最后else也可以正常运行

image-20230918230708259

当都不满足时,什么都没有发生

image-20230918230803981

image-20230918230833020

但是这里有个问题,那就是当满足了第一个条件后,还会再要求判断是否满足第二个条件,这不是多此一举吗?

如何解决?

"""
演示if elif else 语句

"""
print("欢迎来到我的博客世界")

#通过if判断,可以使用多条件判断的语法
#第一个条件就是if
#满足其中一个条件,就可以输出,若满足第一个条件,而不满足第2个条件,也会输出第一个条件下的输出
if int(input("请输入您的身高(cm):"))< 120:
    print("您的身高小于120cm,可以免费游玩")
elif int(input("请输入您的vip级别(1~5):")) > 3:
    print("您的vip级别大于3,可以免费游玩。")
elif int(input("请告诉我今天几号:")) ==1:
    print("今天是1号免费日,可以免费")
else:
  print("不好意思,所有条件都不满足,需要购票10元。")
print("祝您游玩愉快")

这样就不会让一个一个输入,而是按顺序输入,在此种情况下,当满足第一个if时,就没有其他另外两个判断语句的出现了,而以前的情况就是第一个满足了也会让输入第2个判断

image-20230918231656079

当第一个不满足时,才让你输入第2个数值进行判断,满足第2个调价后,也不会再进行第三个条件判断

image-20230918231830346

image-20230918232000881

练习题3

image-20230918232056199

"""
演示if elif else 练习题:猜猜心里数字

"""
#定义一个变量数字
num = 5
#通过键盘输入获取猜想的数字,通过多次if和 elif的组合进行猜想比较
if int(input("请猜一个数字:")) == num:
    print("恭喜你第一次就猜对了,很棒")
elif int(input("猜错了,请再次进行输入:"))==num:
    print("猜对了")
elif int(input("又猜错了,最后再猜一次吧:"))==num:
    print("恭喜,最后一次机会,你猜对了")
else:
    print("sorry,你猜错了")

假如最后一次才猜对,情况如下:

image-20230919220349218

都没有猜对的话

image-20230919220443973

判断语句的嵌套

image-20230919221205864

image-20230919221254912

image-20230919221356612

嵌套判断语句:当满足外层循环后,才会判断是否满足内层循环,当外层的循环都不满足时,直接执行外层的else

image-20230919221518772

"""
演示判断语句的嵌套

"""
if int(input("请输入你的身高:")) > 120:
    print("身高超出限制,不可以免费")
    print("但是,如果vip级别大于3,还是可以免费的哦")
    if int(input("那就输入你的vip级别吧:")) > 3:
        print("恭喜你,vip级别达标,可以免费")
    else :
        print("sorry,你需要买票10元")
else:
    print("欢迎你进入,可以免费游玩")

身高和级别都不满足条件时候的输出

image-20230919222453317

当身高不满足,但是vip级别满足时的输出

image-20230919222540384

image-20230919222739581

age = 11
year =1
level =1
if age >=18:
    print("你是成年人")
    if age < 30:
        print("你的年龄达标了")
        if year >2:
           print("恭喜你,年龄和入职时间都达标,可以领取")
        elif level > 3:
            print("恭喜你,年龄和入职时间都达标,可以领取")
        else:
            print("不好意思,尽管年龄达标,但是入职时间和级别都不达标。")
    else:
        print("不好意思,年龄太大了")
else:
    print("不好意思,小朋友不可以领取。")

根据不同的年龄,工作时间以及级别进行判断

print("公司要来发礼物了,快来看一下你是否满足条件吧")
age=int(input("请输入你的年龄:"))
if(age>=18)and(age<30):
    if int(input("请输入你的入职时间:"))<=2:
        print("不好意思,你的工龄小于等于2,不可以领取")
        print("但是你的级别如果大于3,也可以领取")
        if int(input("请输入你的级别:"))>3:
            print("你的级别大于3,也可以领取")
    else:
        print("你的工龄大于2,可以领取")
else:
    print("你的年龄不符合要求,不能领取")

image-20230919224122231

实战案列-猜数字

image-20230929164659654

#1.构建一个随机的数字变量

import random
num = random.randint(1,10)
print(num)

随机产生一个1-10之间的数字

"""
演示判断语句的实战案例:终极猜数字
"""
#1.构建一个随机的数字变量
import random
num = random.randint(1,10)
print(num)
#输入你要猜测的数字
guess_num = int(input("输入你要猜测的数字:"))
#2.通过if判断语句进行数字的猜测
if guess_num == num:
    print("恭喜,你第一次就猜中了")
else:
    if guess_num>num:
        print("你猜测的数字大了")
    else:
        print("你猜测的数字小了")
    guess_num = int(input("请再次输入你要猜测的数字:"))#在第一个else里包含之中
    if guess_num == num:
        print("恭喜,第二次猜中了")
    else:
          if guess_num > num:
               print("你猜测的数字大了")
          else:
               print("你猜测的数字小了")
          guess_num = int(input("请最后一次输入你要猜测的数字:"))#在第2个else之中
          if guess_num == num:
              print("恭喜,最后一次猜中了")
          else:
              print("不好意思,三次机会用完了,游戏结束")

第一次就猜对的情况

image-20230929170855646

第二次猜对的情况

image-20230929170931754

第三次猜对的

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/311318.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于OpenMV与STM32的数据通信项目(代码开源)

前言&#xff1a;本文为手把手教学 OpenMV 与 STM32 的数据通信项目教程&#xff0c;本教程使用 STM32F103C8T6 与 OpenMV 进行操作。 OpenMV 是非常强大的计算机视觉实现工具&#xff0c;自身提供了非常多的视觉项目案例&#xff0c;编程与使用门槛极低。为了进一步增强作品的…

内存淘金术:Redis 内存满了怎么办?

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 内存淘金术&#xff1a;Redis 内存满了怎么办&#xff1f; 前言LRU&#xff08;Least Recently Used&#xff09;算法LFU&#xff08;Least Frequently Used&#xff09;算法定期淘汰策略内存淘汰事件…

字体图标 iconFont

字体图标使用场景︰主要用于显示网页中通用、常用的一些小图标 精灵图是有诸多优点的&#xff0c;但是缺点很明显。 图片文件还是比较大的。图片本身放大和缩小会失真。一旦图片制作完毕想要更换非常复杂。 此时&#xff0c;有一种技术的出现很好的解决了以上问题&#xff0c…

day-06 构造有效字符串的最少插入数

思路 动态规划&#xff1a; Word[i]单独组成abc 如果Word[i]>word[i-1] 则word[i]和word[i-1]一起构成abc 解题方法 关系式&#xff1a;dp[i]dp[i-1]2或dp[i]dp[i-1]-1 时间复杂度&#xff1a; O(n) 空间复杂度&#xff1a; O(1) Code class Solution {/*动态规划&…

Uncaught ReferenceError: videojs is not defined

项目场景&#xff1a; 项目背景&#xff1a; 开发 vue 项目时&#xff0c;调试时浏览器前端控制台 出现红色 报错信息&#xff1a; Uncaught ReferenceError: videojs is not defined 问题描述 遇到的问题&#xff1a; 开发 vue 项目时&#xff0c; 浏览器控制台出现如下所…

Python-基础语法

标识符 第一个字符必须是字母表中字母或下划线 _ 。标识符的其他的部分由字母、数字和下划线组成。标识符对大小写敏感。在 Python 3 中&#xff0c;可以用中文作为变量名&#xff0c;非 ASCII 标识符也是允许的了。 python保留字 保留字即关键字&#xff0c;我们不能把它们用…

【Docker】Docker安装入门教程及基本使用

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是Java方文山&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的专栏《Docker实战》。&#x1f3af;&#x1f3af; &…

Google上架:2024年一月政策限制之 AI 生成的内容

为确保 Google Play 用户能够获得安全、值得信赖的使用体验&#xff0c;Google会定期更新开发者计划政策。今天就来讲解一下关于一月新政策《AI 生成的内容》。 目录 公布日期&#xff1a;2023-10-25内容公告相关博客截止时间2024-1-31 公布日期&#xff1a;2023-10-25 内容公…

常用的几种推荐算法介绍

个性化推荐&#xff08;推荐系统&#xff09;经历了多年的发展&#xff0c;已经成为互联网产品的标配&#xff0c;也是 AI 成功落地的分支之一&#xff0c;在电商(淘宝/京东)、资讯(今日头条/微博)、音乐(网易云音乐/QQ音乐)、短视频(抖音/快手)等热门应用中&#xff0c;推荐系…

字符串处理(将字符串中符合十六进制数据格式的数字和字符按照其对应的十进制数值进行累加) C语言xdoj704

题目描述&#xff1a; 输入由数字和字符构成的字符串&#xff08;不包含空格&#xff09;&#xff0c;将字符串中符合十六进制数据格式的数字和字符按照其对应的十进制数值进行累加&#xff0c;并输出累加结果&#xff0c;如果字符串中不含有任何满足十六进制格式的字符&#x…

禁用code server docker容器中的工作区信任提示

VSCode 添加受限模式&#xff0c;主要是防止自动运行代码的&#xff0c;比如在vscode配置的task和launch参数是可以运行自定义代码的。如果用VScode打开未知的工程文件就有可能直接运行恶意代码。 但是当我们的实验基础模板文件可控的情况下&#xff0c;要想禁用code server do…

【libpcap】获取报文pcap的ns级别的时间戳

1.安装libpcap 首先&#xff0c;下载最新的 libpcap 源代码。你可以从 tcpdump.org 获取最新版本 1 解压下载的libpcap tar -zxvf libpcap-version.tar.gz 2 进入解压目录进行安装 cd libpcap-version ./configure make sudo make install2 解析报文时间戳 #include <pca…

UI自动化测试工具对企业具有重要意义

随着软件行业的不断发展&#xff0c;企业对高质量、高效率的软件交付有着越来越高的要求。在这个背景下&#xff0c;UI自动化测试工具成为了企业不可或缺的一部分。以下是UI自动化测试工具对企业的重要作用&#xff1a; 1. 提高软件质量 UI自动化测试工具能够模拟用户的操作&am…

x-cmd pkg | llm - 用于与 OPENAI 交互的命令行工具

目录 简介首次用户功能特点进一步探索 简介 llm 是一个命令行工具和 Python 库&#xff0c;用于与大型语言模型&#xff08;Large Language Models&#xff0c;简称 LLMs&#xff09;交互&#xff0c;既可以通过远程 API 访问&#xff0c;也可以在本地机器上运行安装的模型。由…

leetcode面试经典150题——50 快乐数

题目&#xff1a;快乐数 描述&#xff1a; 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为&#xff1a; 对于一个正整数&#xff0c;每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1&#xff0c;也可能是 无限循环 但始终变…

【JavaWeb学习笔记】19 - 网购家居项目开发(上)

一、项目开发流程 程序框架图 项目具体分层方案 MVC 1、说明是MVC MVC全称: Mode模型、View视图、Controller控制器。 MVC最早出现在JavaEE三层中的Web层&#xff0c;它可以有效的指导WEB层的代码如何有效分离&#xff0c;单独工作。 View视图:只负责数据和界面的显示&…

CSS 选择器全攻略:从入门到精通(下)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

Linux---gcc编译

目录 前言 一、gcc编译 二、程序的编译过程 三、gcc查看编译过程 1.预处理阶段 2.编译 3.汇编 4.链接 动静态库链接的内容 动静态库链接的优缺点 5.总结记忆 前言 在前面我们学会使用vim对文件进行编辑&#xff0c;如果是C或者C程序&#xff0c;我们编辑好了内容…

【Xilinx FPGA】异步 FIFO 的复位

FIFO&#xff08;First-In-First-Out&#xff0c;先入先出&#xff09;是一种的存储器类型&#xff0c;在 FPGA 开发中通常用于数据缓存、位宽转换或者跨时钟域&#xff08;多 bit 数据流&#xff09;。在使用异步 FIFO 时&#xff0c;应注意复位信号是否遵循相关要求和规范&am…

RediSearch vs. Elasticsearch vs. solr

1. RediSearch vs. Elasticsearch RediSearch是一个分布式全文搜索和聚合引擎&#xff0c;作为Redis之上的一个模块构建。它使用户能够以极快的方式在Redis数据集上执行复杂的搜索查询。RediSearch的独特架构是用C编写的&#xff0c;从头开始构建在优化的数据结构上&#xff0…