GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • 莫烦PYTHON
  • 学习 ▾
  • 推荐学习顺序
  • 交互式学Python
  • 多进程 multiprocessing
  • 多线程 threading
  • 窗口视窗 Tkinter
  • 有趣的机器学习
  • 强化学习 Reinforcement Learning
  • 进化算法 Evolutionary Algorithm
  • Tensorflow
  • PyTorch
  • Theano
  • Keras

This view

  • Original page
  • New address

GeezerVison is showing mofanpy.com — 条件判断 | 莫烦Python

  • 支持

📢

莫烦有新起点啦!「莫烦 x 无限可能」— 关于 AI、行业、产品、教育的经验思考,欢迎来新站看看 →

« 变量与运算 for 和 while 循环 »

条件判断

作者: 莫烦 编辑: 莫烦 发布于: 2021-04-24

判断是人类日常就会做的事情。 同样,判断也是程序最基础的核心功能。有了判断,程序才会有执行的逻辑。 就好比在我们这个文件管理项目中,判断的场景也随处可见。比如如果文件在垃圾桶中,那么文件就可以被彻底删除等等。

if 如果¶

if 很好理解,就是判断的基石,如果什么样就做什么。我们就用 if 来复现一下刚刚提到的文件系统里垃圾桶场景吧。

你可以尝试一下,把上面的in_trash = True改成in_trash = False,看看会有什么样的结果。 下面,我们在 in_trash 前面加上一个 not 来表示 in_trash 的反面,也就是不在垃圾桶里的意思。

同样,你可以再尝试一下,把上面的in_trash = False改成in_trash = True,看看会有什么样的结果。

if-else 如果否则¶

其实,如果又要判断正面又要判断反面的情况,我们完全可以一次性搞定,比如下面使用 if-else 这种结构。 简单明了地就同时判断了正反面应该做的两件不同的事情。

判断条件¶

其实除了 True / False 还有很多其他的间接判断条件。比如下面列出来的这些判断标准。

判断 含义
a == b a 是否等于 b
a > b a 是否大于 b
a >= b a 是否大于等于 b
a < b a 是否小于 b
a <= b a 是否小于等于 b
a != b a 是否不等于 b

如果是文字的话,也可以比较是否等于/不等于哦,其它那些大于小于都是用于数值判断的。

你还可以在这里尝试大把其他的判断,这些判断都会返回一个 True 后 False 的结果。甚至,你还可以叠加不同的判断。

我在下面再列一张表,来说明这些 and or not 的含义:

判断 含义
True and True 需要两边同时满足才能返回 True
True or False 只要一边是 True 则返回 True
not True 给出相反结果

有了这些工具,拿到最终的那个 True / False 后,你就能再套用在 if-else 的结构里啦,将判断依据与判断后的流程联通在一起。

if-elif-else¶

还有比 if-else 更强大的结构。因为有时候我们还需要多判断一些情况,比如周一要干嘛,周二要干嘛,周三要干嘛等等,这并不是一个非黑即白的判断,而是多重判断连在一起的。 所以我们必然有更好的方式去判断。

快来尝试一下其它的判断吧。比如你要判断多个数值区间你该怎么写呢?


降低知识传递的门槛

莫烦经常从互联网上学习知识,开源分享的人是我学习的榜样。 他们的行为也改变了我对教育的态度: 降低知识传递的门槛。

我组建了微信群,欢迎大家加入,交流经验,提出问题,互相帮持。 扫码后,请一定备注"莫烦",否则我不会同意你的入群申请。

wechat
« 变量与运算 for 和 while 循环 »
    教程目录

    交互式学Python

      介绍

    • 课程介绍

      基础功能

    • 变量与运算

      循环、数据、判断

    • 条件判断
      • if 如果
      • if-else 如果否则
      • 判断条件
      • if-elif-else
    • for 和 while 循环
    • 数据种类

      函数、类、模块

    • Function 函数
    • Class 类
    • Module 模块

      文件管理

    • 读写文件
    • 文件目录管理
    • 正则表达式
    • pickle/json 序列化

      异常检查和处理

    • 如何控制异常 try-except
    • 单元测试

      做个项目

    • 没啥用计算器
    • 文件批量处理

      高阶内容

    • 字符串的高级玩法
    • Python的偷懒用法
    • 复制的"玄学"
    • 为什么要有生成器
    • 套娃的装饰器
    • Python 安装和依赖管理:Conda/Pip
    • Python编辑器

      进阶学习

    • 多线程多进程
    • Python 窗口部件
    • 数据三剑客 Numpy Pandas Matplotlib
    • 数据采集-爬虫技术
    You are visitor 01402503 — GeezerVison does not store the pages you look up.
    Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.