zoukankan      html  css  js  c++  java
  • 大爽Python入门教程 3-1 布尔值: True, False

    大爽Python入门公开课教案
    点击查看教程总目录

    1 布尔值介绍

    从判断说起

    回顾第一章介绍的简单的判断

    >>> x = 10
    >>> if x > 5:
    ...     print("x is greater than 5")
    

    重点来看下if x > 5:这一句。
    这一句可以分为两步

    • x > 5: 本质是一个运算式,其值是一个布尔值。
    • if根据布尔值来判断。
      具体如下
    >>> x = 10
    >>> x > 5
    True
    >>> if True:
    ...     print("x is greater than 5")
    

    上面的True就是布尔值,
    if条件判断本质上是根据布尔值来判断的。

    布尔值

    布尔值(Booleans)只有两个:

    • True: 真,正确
    • False: 假,错误

    其数据类型为bool

    之前第一张简单判断的比较运算符,其运算结果就是布尔值。

    if判断,使用布尔值来判断是否执行冒号后的语句的。
    if True就执行。
    if False就不会执行。

    >>> b = 1 > 5
    >>> b
    False
    >>> type(b)
    <class 'bool'>
    >>> if b:
    ...     print("1 > 5")
    ...
    >>> c = 1 < 5
    >>> c
    True
    >>> if c:
    ... 	print("c<5")
    ...
    1<5
    >>> if False:
    ... 	print("Only output when true")
    ...
    >>> if True:
    ... 	print("Only output when true")
    ...
    Only output when true
    

    布尔转换

    if条件判断, 本质上是根据布尔值来判断的。
    即得到if后内容的布尔值。

    当后面内容结果不是布尔对象时,
    会将结果使用bool()方法转换成布尔对象。
    变量使用bool()方法转换后的布尔值,
    一般简称为变量的布尔值

    示例如下

    >>> bool(1)
    True
    >>> bool(-1)
    True
    >>> bool(0)
    False
    >>> if 0:
    ... 	print("Only output when true")
    ...
    >>> if 1:
    ... 	print("Only output when true")
    ...
    Only output when true
    >>> if -1:
    ... 	print("Only output when true")
    ...
    Only output when true
    

    结论(不必去记,用的时候敲一遍代码就知道了)

    • 只有0的布尔值是False,其他数(包括负数)的布尔值都是True
      尤其是-1的布尔值,也是True

    小技巧:
    if语句后面的输出不确定,想测试的时候,
    没有必要把整个if语句敲一遍。
    直接把if判断的内容的布尔值取一下就好。

    常用对象的布尔值

    结论(不必去记,用的时候敲一遍代码就知道了)
    空容器的布尔值是False,非空容器的布尔值都是True
    适用于:字符串,元组,列表,字典等等。

    代码示例

    >>> bool("")
    False
    >>> bool("a")
    True
    >>> bool(())
    False
    >>> bool((1,2))
    True
    >>> bool([])
    False
    >>> bool([1])
    True
    >>> bool({})
    False
    >>> bool({"a": 1})
    True
    

    布尔运算

    其他得到布尔值的方法

  • 相关阅读:
    《结对-贪吃蛇游戏-最终程序》
    《团队-科学计算器-模块测试过程》
    Bootstrap
    Angularjs的核心概念
    jQuery Ajax
    浏览器为什么会有兼容性问题
    BFC
    sass
    HTML5
    面向过程和面向对象编程
  • 原文地址:https://www.cnblogs.com/BigShuang/p/15207586.html
Copyright © 2011-2022 走看看