Python入门--判断语句

news2024/12/28 12:04:25

目录

1. 布尔类型和比较运算符

2. if语句的基本格式

3. if-else语句

4. if-elif-else语句

5. 判断语句的嵌套

6. 应用--猜数字游戏


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

1. 布尔类型和比较运算符

        在逻辑判断中,一件事情要么发生要么不发生,那我们就需要用布尔类型(Bool)来表示真、假两种状态。

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

  • True表示真
  • False表示假

True本质上是一个数字记作1,False记作0,因此Python中将布尔类型划分为数字类型。

bool_1 = True
bool_2 = False
print(f"bool_1变量的内容是:{bool_1},类型是:{type(bool_1)}")
print(f"bool_2变量的内容是:{bool_2},类型是:{type(bool_2)}")

        布尔类型不仅可以自行定义,也可以通过比较运算符进行比较得到布尔类型的结果。 

result =10 > 5
print(f"10 > 5 的结果是:{result},类型是:{type(result)}")

result ="itcast"== "itstudy"
print(f"字符串itcast是否和itstudy相等,结果是:{result},类型是:{type(result)}")

num1 = 1
num2 = 10
print(f"nums1 == nums2的结果是:{num1 == num2}")

2. if语句的基本格式

         跟C语言不同的是,我们不需要将条件放在( )里,同时要做的事情不需要放在{ }里,但要注意Python里,我们要在条件后面加上:,这个一定不能忘记。

        Python中不将要做的事情不需要放在{ }里,那为了判断要做的事情是哪个语句要执行的,我们要注意空格缩进。我们在要做的事情前加上4个空格缩进,就可以将这条语句分配给对应的if。

age =10
print(f"今年我已经{age}岁了")
if age >= 18:
    # 这两条语句前面都有4个空格,因此if判断成立时,这两条语句才会执行
    print("我已经成年了")
    print("即将步入大学生活")
# 这条语句前没有空格,因此无论判断是否成立,本语句都会执行
print("时间过的真快")

3. if-else语句

        if满足条件会执行相应的代码语句满足的情况下也有要执行的内容代码就要使用if-else语句。

print("欢迎来到儿童游乐场,儿童免费,成人收费。")
age = int(input("请输入年龄:"))
if age >= 18:
    print("您已成年,需要收费10元。")
else :
    print("您未成年,可以免费游玩。")
print("祝您游玩愉快。")

        注意:else语句需要判断条件,但要有:表示在下面写要做什么else的代码块同样需要4个空格作为缩进

4. if-elif-else语句

        我们可以看到elif可以有多个。 要注意判断是从上到下有顺序的,但凡遇到一个条件成立了,下面的判断部分就不进行了,直接调到判断之外的部分。这里也可以省略else。

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

5. 判断语句的嵌套

        有很多场景,不仅仅是多个并列条件,还会有满足前置条件才会二次甚至多次判断的多层判断需求这种需求就要使用嵌套判断语句

        我们可以自由嵌套if/if-else/if-elif-else,确定他属于哪个判断条件成立要执行的地方,调整缩进即可。

# 判断语句嵌套应用--派发礼物
# 必须是大于等于18岁小于30岁的成年人
# 同时入职时间需满足大于两年,或者级别大于3才可领取
age = int(input("请输入年龄:"))
year = int(input("请输入入职时间:"))
level = int(input("请输入级别:"))
if age >= 18:
    print("成年人符合,继续判断")
    if age < 30:
        print("年龄达标继续判断")
        if year > 2:
            print("小于30岁的成年人且入职超过2年,满足条件,可以领取")
        else:
            print("Sorry,年龄符合,但入职时间不足")
    elif level > 3:
        print("级别大于3的成年人可直接领取礼物")
    else:
        print("您的年龄过大或级别小于等于3,不可领取")
else:
    print("Sorry,未成年不可领取礼物")

6. 应用--猜数字游戏

案例需求:

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

案例要求:

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

 

# 为了随机产生数字,我们要导入random库
import random
# random库里的randint可以用于产生随机的整数,()里用来规定数据产生的范围
num = random.randint(1,10)
guess = int(input("请输入你猜的数字1:"))
if guess == num:
    print("猜中啦")
else:
    if guess > num:
        print("你猜测的数字1大了")
    else:
        print("你猜测的数字1小了")
    guess = int(input("请输入你猜的数字2:"))
    if guess == num:
        print("猜中啦")
    else:
        if guess > num:
            print("你猜测的数字2大了")
        else:
            print("你猜测的数字2小了")
        guess = int(input("请输入你猜的数字3:"))
        if guess == num:
            print("猜中啦")
        else:
            print("3次机会用尽,没有猜中")

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

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

相关文章

OceanBase—02(入门篇——对于单副本单节点,由1个observer扩容为3个observer集群)——之前的记录,当初有的问题未解决,目前新版未尝试

OceanBase—02&#xff08;入门篇——对于单副本单节点&#xff0c;由1个observer扩容为3个observer集群&#xff09;——之前的记录&#xff0c;有的问题未解决&#xff0c;新版未尝试 1、前言—安装单副本单节点集群1.1 docker安装OB 2、查看现有集群情况2.1 进入容器&#x…

设置服务器走本地代理

勾选&#xff1a; 然后&#xff1a; git clone https://github.com/rofl0r/proxychains-ng.git./configure --prefix/home/wangguisen/usr --sysconfdir/home/wangguisen/etcmakemake install# 在最后配置成本地代理地址 vim /home/wangguisen/etc/proxychains.confsocks4 17…

Python编写的贪吃蛇小游戏

安装包 pip install pygame完整代码 import pygame import randompygame.init()# 定义颜色 white (255, 255, 255) black (0, 0, 0) red (213, 50, 80) green (0, 255, 0) blue (50, 153, 213)# 定义屏幕大小 dis_width 800 dis_height 600dis pygame.display.set_mo…

【数据结构】什么是平衡二叉搜索树(AVL Tree)?

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 目录 &#x1f4cc;AVL树的概念 &#x1f4cc;AVL树的操作 &#x1f38f;AVL树的插入操作 ↩️右单旋 ↩️↪️右左双旋 ↪️↩️左右双旋 ↪️左单旋 &#x1f38f;AVL树的删…

CTF刷题buuctf

[WUSTCTF2020]颜值成绩查询 拿到相关题目&#xff0c;其实根据功能和参数分析。需要传入一个学号然后进行针对于对应的学号进行一个查询&#xff0c;很可能就会存在sql注入。 其实这道题最难的点&#xff0c;在于过滤了空格&#xff0c;因此我们使用 /**/来过滤空格的限制。…

智能化焊接数据管理系统:系统功能设计与应用场景,OEM定制

在快速发展的工业4.0时代&#xff0c;智能化技术正以前所未有的速度改变着各行各业&#xff0c;其中焊接行业也不例外。随着物联网、大数据、人工智能等技术的不断融合&#xff0c;智能化焊接数据管理系统应运而生&#xff0c;成为提高焊接效率、保障焊接质量、优化生产流程的重…

半监督学习与数据增强(论文复现)

半监督学习与数据增强&#xff08;论文复现&#xff09; 本文所涉及所有资源均在传知代码平台可获取 文章目录 半监督学习与数据增强&#xff08;论文复现&#xff09;概述算法原理核心逻辑效果演示使用方式 概述 本文复现论文提出的半监督学习方法&#xff0c;半监督学习&…

C题(二)字符串转数字 --- atoi

———————————————————**目录**—————————————————— 一、 atoi函数介绍 功能函数原型使用示例 二、题解之一 三、留言 问题引入&#x1f449; 输入样例&#x1f449; 5 01234 00123 00012 00001 00000 输出样例&#x1f449; 1234 123 …

‌文件名称与扩展名:批量重命名的技巧与指南

在日常的文件管理中&#xff0c;我们经常需要处理大量的文件&#xff0c;这些文件可能有着各种各样的名称和扩展名。为了更好地管理和识别这些文件&#xff0c;批量重命名成为了一项非常实用的技能。能够帮助我们快速整理文件&#xff0c;提高工作效率。本文将深入探讨文件名称…

vue2圆形标记(Marker)添加点击事件不弹出信息窗体(InfoWindow)的BUG解决

目录 一、问题详情 二、问题排查 三、解决方案 一、问题详情 地图上面的轨迹点希望能通过点击看到详细的经纬度信息&#xff0c;但是点击的时候就是显示不出来。 二、问题排查 代码都是参考高德的官方文档&#xff0c;初步看没有问题啊&#xff0c;但是点击事件就感觉失效…

10.3今日错题解析(软考)

目录 前言计算机网络——路由配置数据库系统——封锁协议 前言 这是用来记录我备考软考设计师的错题的&#xff0c;今天知识点为路由配置、封锁协议&#xff0c;大部分错题摘自希赛中的题目&#xff0c;但相关解析是原创&#xff0c;有自己的思考&#xff0c;为了复习&#xf…

Pix2Pix实现图像转换

tutorials/application/source_zh_cn/generative/pix2pix.ipynb MindSpore/docs - Gitee.com Pix2Pix概述 Pix2Pix是基于条件生成对抗网络&#xff08;cGAN, Condition Generative Adversarial Networks &#xff09;实现的一种深度学习图像转换模型&#xff0c;该模型是由Ph…

Comparable接口和Comparator接口

前言 Java中基本数据类型可以直接比较大小&#xff0c;但引用类型呢&#xff1f;同时引用对象中可能存在多个可比较的字段&#xff0c;那么我们该怎么比较呢&#xff1f; Java中引用类型不能直接进行大小的比较&#xff0c;这种行为在编译器看来是危险的&#xff0c;所以会编译…

程序员在AI时代的生存指南:打造不可替代的核心竞争力

在这个AI大行其道的时代&#xff0c;似乎每天都有新的语言模型像变魔术一样涌现出来&#xff0c;比如ChatGPT、midjourney、claude等等。这些家伙不仅会聊天&#xff0c;还能帮忙写代码&#xff0c;让程序员们感受到了前所未有的“压力”。我身边的一些程序员朋友开始焦虑&…

SpringCloud入门(十)统一网关Gateway

一、网关的作用 Spring Cloud Gateway 是 Spring Cloud 的一个全新项目&#xff0c;该项目是基于 Spring 5.0&#xff0c;Spring Boot 2.0 和 Project Reactor 等响应式编程和事件流技术开发的网关&#xff0c;它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。 …

E. Tree Pruning Codeforces Round 975 (Div. 2)

原题 E. Tree Pruning 解析 本题题意很简单, 思路也很好想到, 假设我们保留第 x 层的树叶, 那么对于深度大于 x 的所有节点都要被剪掉, 而深度小于 x 的节点, 如果没有子节点深度大于等于 x, 那么也要被删掉 在做这道题的时候, 有关于如何找到一个节点它的子节点能通到哪里,…

关于鸿蒙next 调用系统权限麦克风

使用app的时候都清楚&#xff0c;想使用麦克风、摄像头&#xff0c;存储照片等&#xff0c;都需要调用系统的权限&#xff0c;没有手机操作系统权限你也使用不了app所提供的功能&#xff0c;虽然app可以正常打开&#xff0c;但是你需要的功能是没办法使用的。今天把自己在鸿蒙学…

想怎样书写HTML5自结束标签,您随意就好(✪▽✪)

书写后接斜杠还是不接&#xff0c;看过ai给的详细解析就不再迷茫了。 (笔记模板由python脚本于2024年10月03日 10:42:41创建&#xff0c;本篇笔记适合HTML5标签的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网&#xff1a;https://www.python.org/ Free&#xff1a;大咖…

【数据库差异研究】update与delete使用表别名的研究

目录 ⚛️总结 ☪️1 Update ♋1.1 测试用例UPDATE users as a SET a.age 111 WHERE a.name Alice; ♏1.2 测试用例UPDATE users as a SET a.age 111 WHERE name Alice; ♐1.3 测试用例UPDATE users as a SET age 111 WHERE a.name Alice; ♑1.4 测试用例UPDATE us…

TIM“PWM”输出比较原理解析

PWM最重要的就是占空比&#xff0c;所有都是在为占空比服务&#xff0c;通过设置不同的占空比&#xff0c;产生不同的电压&#xff0c;产生不同的效果 定时器的输出通道 基本定时器&#xff1a; 基本定时器没有通道 通用定时器&#xff1a; 4个通道&#xff08;CH1, CH2, C…