Python学习之判断语句,从基础到实践

news2025/3/16 6:32:19

文章目录

      • 前言
      • 为什么学习判断语句
      • 布尔类型和比较运算符
      • if语句的基本格式
        • 练习案例:成年人判断
      • if else 语句
      • if elif else语句
        • 练习案例:猜猜心里数字
      • 判断语句的嵌套
      • 实战案例
      • 关于Python技术储备
        • 一、Python所有方向的学习路线
        • 二、Python基础学习视频
        • 三、精品Python学习书籍
        • 四、Python工具包+项目源码合集
        • ①Python工具包
        • ②Python实战案例
        • ③Python小游戏源码
        • 五、面试资料
        • 六、Python兼职渠道


前言

进行逻辑判断,是生活中常见的行为。同样,在程序中,进行逻辑判断也是最为基础的功能。

image-20231219112242959

为什么学习判断语句

判断在程序中广泛应用,如果没有它,这些功能都难以实现。

image-20231219112322005

布尔类型和比较运算符

布尔类型,进行判断,只有2个结果:是、否

布尔(bool)表达现实生活中的逻辑,即真和假

  • True表示真
  • False表示假

True本质上是一个数字记作1,False记作0

定义变量存储布尔类型数据: 变量名称 = 布尔类型字面量

比较运算符:

运算符描述示例
==判断内容是否相等,满足为True,不满足为False如a=3,b=3,则(a == b) 为 True
!=判断内容是否不相等,满足为True,不满足为False如a=1,b=3,则(a != b) 为 True
判断运算符左侧内容是否大于右侧满足为True,不满足为False如a=7,b=3,则(a > b) 为 True
<判断运算符左侧内容是否小于右侧满足为True,不满足为False如a=3,b=7,则(a < b) 为 True
>=判断运算符左侧内容是否大于等于右侧满足为True,不满足为False如a=3,b=3,则(a >= b) 为 True
<=判断运算符左侧内容是否小于等于右侧满足为True,不满足为False如a=3,b=3,则(a <= b) 为 True

if语句的基本格式

if判断语句:image-20231219112857801

# 定义变量
age = 30
# 进行判断
if age >= 18:    
    print("我已经成年了")

判断语句的结果,必须是布尔类型True或False。True会执行if内的代码语句,False则不会执行。\

age = 18

print(f"今年我已经{age}岁了")
if age >= 18:
    print("我已经成年了")
    print("即将步入大学生活")
print("时间过的真快")

image-20231219113525043

练习案例:成年人判断

结合前面学习的input输入语句,完成如下案例:

  1. 通过input语句,获取键盘输入,为变量age赋值。(注意转换成数字类型)

  2. 通过if判断是否是成年人,满足条件则输出提示信息,如下:

image-20231219113708308

提示:您已成年,需要补票的信息输出,来自if判断。

print("欢迎来到儿童游乐场,儿童免费,成人收费")
play_price = 100
age = int(input('请输入你的年龄:'))
if age >= 18:
    print(f'您已成年,游玩需要补票{play_price}元。')
else:
    print(f'您未成年,游玩不需要补票。')

if else 语句

if 条件:
满足条件时要做的事情1
满足条件时要做的事情2
满足条件时要做的事情3
...(省略)...
else:
不满足条件时要做的事情1
不满足条件时要做的事情2不满足条件时要做的事情3
...(省略)...

image-20231219114134599

  1. else后,不需要判断条件
  2. 和if的代码块一样,else的代码块同样需要4个空格作为缩进

if elif else语句

if 条件1:
    条件1满足应做的事情
    条件1满足应做的事情
elif 条件2:
    条件2满足应做的事情
    条件2满足应做的事情
elif 条件N:
    条件N满足应做的事情
    条件N满足应做的事情
else:
	所有条件都不满足应做的事情
    所有条件都不满足应做的事情

print("欢迎来到动物园Zoo")

height = int(input("请输入你的身高(cm) :"))
vip_level = int(input("请输入你的vip级别(1~5):"))
if height < 120:
    print("您的身高小于120CM,可以免费游玩。")
elif vip_level > 3:
    print("您的vip级别大于3,可以免费游玩。")
else:
    print("不好意思,所有条件都不满足,需要购票10元。")
print("祝您游玩愉快。")

image-20231219114810641

if elif else语句 注意点

image-20231219115319793

练习案例:猜猜心里数字
  1. 定义一个变量,数字类型,内容随意。
  2. 基于input语句输入猜想的数字,通过if和多次elif的组合,判断猜想数字是否和心里数字一致。
请输入第一次猜想的数字:1
不对,再猜一次:2
不对,再猜最后一次:3
Sorry,全部猜错啦,我想的是:10

guess_num = 10
if int(input("请输入第一次猜想的数字:")) == guess_num:
    print("恭喜你猜对了!")
elif int(input("不对,再猜一次:")) == guess_num:
    print("恭喜你猜对了!")
elif int(input("不对,再猜最后一次:")) == guess_num:
    print("恭喜你猜对了!")
else:
    print(f"Sorry,全部猜错啦,我想的是:{guess_num}")

image-20231219115526290

判断语句的嵌套

有很多场景,不仅仅是多个并列条件,还会有满足前置条件才会二次判断的多层判断需求。

对这种需求,嵌套判断语句可以实现

image-20231219142801932

许多逻辑的判断,是嵌套的,多层次的。 对于这种需求,我们可以:自由组合 if elif else,完成特定需求的要求

基础语法格式如下:

if 条件1:
	满足条件1 做的事情1
	满足条件1 做的事情2
if 条件2:
	满足条件2 做的事情1
	满足条件2 做的事情2
    
#上述,第二个if,属于第一个if内,只有第一个if满足条件,才会执行第二个if
#嵌套的关键点,在于:空格缩进
#通过空格缩进,来决定语句之间的:层次关系

image-20231219143934386

实战案例

定义一个数字(1~10,随机产生),通过3次判断来猜出来数字

要求:

  1. 数字随机产生,范围1-10
  2. 有3次机会猜测数字,通过3层嵌套判断实现
  3. 每猜不中,会提示大了或小了

提示,通过如下代码,可以定义一个变量num,变量内存储随机数字。

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

random_num = random.randint(1, 10)
print(f"{random_num}")
input_num1 = int(input("请输入第一次猜想的数字:"))
if input_num1 == random_num:
    print("恭喜你猜对了!")
elif input_num1 < random_num:
    input_num2 = int(input("猜小了,请再一次输入想要猜出的数字:"))
    if input_num2 == random_num:
        print("恭喜你猜对了!")
    elif input_num2 < random_num:
        input_num3 = int(input("猜小了,请再一次输入想要猜出的数字:"))
        if input_num3 == random_num:
            print("恭喜你猜对了!")
        else:
            print(f"Sorry,机会已经用完,我想的数字是:{random_num}")
    else: #input_num2 > random_num
        input_num2 = int(input("猜大了,请再一次输入想要猜出的数字:"))
        if input_num2 == random_num:
            print("恭喜你猜对了!")
        else :
            print(f"Sorry,机会已经用完,我想的数字是:{random_num}")
else: #input_num1 > random_num
    input_num2 = int(input("猜大了,请再一次输入想要猜出的数字:"))
    if input_num2 == random_num:
        print("恭喜你猜对了!")
    elif input_num2 < random_num:
        input_num3 = int(input("猜小了,请再一次输入想要猜出的数字:"))
        if input_num3 == random_num:
            print("恭喜你猜对了!")
        else:
            print(f"Sorry,机会已经用完,我想的数字是:{random_num}")
    else:  # input_num2 > random_num
        input_num2 = int(input("猜大了,请再一次输入想要猜出的数字:"))
        if input_num2 == random_num:
            print("恭喜你猜对了!")
        else:
            print(f"Sorry,机会已经用完,我想的数字是:{random_num}")

image-20231219144647852


关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后给大家分享一份全套的 Python 学习资料,希望提供给想学习 Python 的小伙伴们一点帮助!

保存图片微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python基础学习视频

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

三、精品Python学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、Python工具包+项目源码合集
①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

六、Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以保存图片微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

uniapp使用localStorage存储值遇到的问题

1. 数据存储localStorage llocalStorage是本地存储&#xff0c;是将数据存储到浏览器的方法&#xff0c;一般在跨页面时使用。 uniapp提供数据存和取的api。 uni.setStorage({key:runTime,data:this.sumRTtime.toFixed(3),success:function(){console.log(success);})从图中可…

鸿蒙应用开发者认证(基础、高级)

认证地址 认证地址&#xff1a;HarmonyOS认证地址 注意事项 拥有华为云开发者账号要实名认证 认证方式 在线考试形式、判断题、单选题、多选题 &#xff0c;基础认证90分及格&#xff0c;高级认证80分及格&#xff0c;证书两年有效 不建议各位百度答案&#xff0c;最好看完Ha…

众和策略:12月新批国产网游版号数量过百

上星期五&#xff08;22日&#xff09;&#xff0c;A股冲高回落&#xff0c;三大股指挨近午盘拉升走高&#xff0c;午后再度回落走低&#xff0c;沪指尾盘跌幅收窄。到收盘&#xff0c;沪指跌0.13%报2914.78点&#xff0c;深成指跌0.39%报9221.31点&#xff0c;创业板指跌0.37%…

nvm node 安装与配置

nvm Node Version Manager&#xff08;NVM&#xff09; 是一种用于管理多个主动节点.js版本的工具。 nvm官网下载地址 https://github.com/coreybutler/nvm-windows/releases 如果电脑上之前已经单独安装了node&#xff0c;先卸载&#xff08;可以在控制面板里面卸载&#xf…

【JVM】虚拟机栈与本地方法栈

一、虚拟机栈&#xff08;VM Stack&#xff09; 1.1&#xff09;什么是虚拟机栈   虚拟机栈是用于描述java方法执行的内存模型。   每个java方法在执行时&#xff0c;会创建一个“栈帧&#xff08;stack frame&#xff09;”&#xff0c;栈帧的结构分为“局部变量表、操作数…

引用jquery.js的html5基础页面模板

本专栏是汇集了一些HTML常常被遗忘的知识&#xff0c;这里算是温故而知新&#xff0c;往往这些零碎的知识点&#xff0c;在你开发中能起到炸惊效果。我们每个人都没有过目不忘&#xff0c;过久不忘的本事&#xff0c;就让这一点点知识慢慢渗透你的脑海。 本专栏的风格是力求简洁…

目标追踪:使用ByteTrack进行目标检测和跟踪

BYTE算法是一种简单而有效的关联方法&#xff0c;通过关联几乎每个检测框而不仅仅是高分的检测框来跟踪对象。这篇博客的目标是介绍ByteTrack以及多目标跟踪&#xff08;MOT&#xff09;的技术。我们还将介绍在样本视频上使用ByteTrack跟踪运行YOLOv8目标检测。 多目标跟踪&…

JoySSL证书

很多人喜欢JoySSL证书&#xff0c;主要是因为 JoySSL 提供了许多有吸引力的特性和优势。首先&#xff0c;JoySSL 提供的 SSL 证书价格相对较为实惠&#xff0c;使得小型企业和个人网站也能够轻松承担起加密保护的成本。其次&#xff0c;JoySSL 提供的证书具有很高的安全性&…

华为云Stack 8.X流量模型分析(三)

三、VPC内部二层流量模型分析 1.不同宿主机下虚拟机互访 VM1发送arp请求&#xff0c;arp报文根据流表到达br-tun&#xff0c;br-tun给予VM1到达VM2的MAC信息。此时arp报文不出宿主机&#xff08;Host1&#xff09;&#xff1b; **注意&#xff1a;**br-tun内的信息是由管理平…

Android Termux安装SSH结合内网穿透实现远程SFTP文件传输

文章目录 1. 安装openSSH2. 安装cpolar3. 远程SFTP连接配置4. 远程SFTP访问4. 配置固定远程连接地址 SFTP&#xff08;SSH File Transfer Protocol&#xff09;是一种基于SSH&#xff08;Secure Shell&#xff09;安全协议的文件传输协议。与FTP协议相比&#xff0c;SFTP使用了…

Windows操作系统:共享文件夹,防火墙的设置

1.共享文件夹 1.1 共享文件夹的优点 1.2 共享文件夹的优缺点 1.3 实例操作 ​编辑 2.防火墙设置 2.1 8080端口设置 3.思维导图 1.共享文件夹 1.1 共享文件夹的优点 优点 协作和团队合作&#xff1a;共享文件夹使多个用户能够在同一文件夹中协作和编辑文件。这促进了团…

【开源】基于JAVA语言的企业项目合同信息系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 合同审批模块2.3 合同签订模块2.4 合同预警模块2.5 数据可视化模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 合同审批表3.2.2 合同签订表3.2.3 合同预警表 四、系统展示五、核心代码5.1 查询合同…

Rancher小白学习之路

官网&#xff1a;http://docs.rancher.cn/docs/rancher1/rancher-service/load-balancer/_indexhttp://docs.rancher.cn/docs/rancher1/rancher-service/load-balancer/_indexRancher2.5集群搭建&K3S生产环境搭建手册 - 知乎 【rancher教程】十年运维大佬两小时带你搞定ran…

centos7.9中离线安装nginx开启ssl,arm架构

一、首先需要去国内相关镜像库下载相关依赖rpm&#xff1a; http://mirrors.bfsu.edu.cn/centos-altarch/7.9.2009/os/aarch64/ http://mirror.nju.edu.cn/centos-altarch/7.9.2009/os/aarch64/ http://mirrors.tuna.tsinghua.edu.cn/centos-altarch/7.9.2009/os/aarch64/ htt…

Flink 输出至 Redis

【1】引入第三方Bahir提供的Flink-redis相关依赖包 <!-- https://mvnrepository.com/artifact/org.apache.bahir/flink-connector-redis --> <dependency><groupId>org.apache.bahir</groupId><artifactId>flink-connector-redis_2.11</arti…

【数学建模美赛M奖速成系列】Matplotlib绘图技巧(一)

Matplotlib图像基础 写在前面1 基本绘图实例&#xff1a;sin、cos函数图2 plot()函数详解**kwargs参数&#xff1a; 3 matplotlib中绘图的默认配置4 设置图的横纵坐标的上下界5 设置横纵坐标上的记号6 调整图像的脊柱7 添加图例8 给一些特殊点加注释9 子图最后 写在前面 前面我…

轻松设置CentOS IP地址的最终指南:详细的分步说明

轻松设置CentOS IP地址的最终指南 一、引言二、准备工作三、手动设置IP地址四、自动分配IP地址(DHCP)五、使用网络管理工具设置IP地址5.1、使用nmtui工具进行图形化设置5.2、使用nmcli命令行工具进行设置 六、常见问题和解决方案七、总结 一、引言 CentOS操作系统是一种基于Li…

uni-app tabbar组件

锋哥原创的uni-app视频教程&#xff1a; 2023版uniapp从入门到上天视频教程(Java后端无废话版)&#xff0c;火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版)&#xff0c;火爆更新中...共计23条视频&#xff0c;包括&#xff1a;第1讲 uni…

AI+城市运行“一网统管”建设白皮书,核心建设目标和内容

“一网统管”是指依托智能城市运行管理中心的实体化运作&#xff0c;以物联网、大数据、人工智能、区块链等现代信息技术为手段&#xff0c;对城市运行进行全域的即时分析、指挥、调动、管理&#xff0c;实现对城市运行中各类事项“一网打尽”、城市治理“一屏通览”。 以下是A…

Jmeter 性能测试 —— 评估一个系统TPS与并发数!

问题&#xff1a;性能压测&#xff0c;如何评估一个系统的TPS和并发数&#xff1f; 1、对于新系统 由业务部门或开发人员预估交易量和TPS指标 可以参考公式&#xff1a;并发用户 在线用户数 * 10%。 当一个系统还没有上线时&#xff0c;我们可以预判的是这个系统准备要给多…