美文网首页工具癖python学习
Python小课笔记--Python基础:布尔值和空值处理

Python小课笔记--Python基础:布尔值和空值处理

作者: 仟樱雪 | 来源:发表于2018-11-21 09:25 被阅读18次
    截图来自Python小课 文|仟樱雪
    在Python小课-1--4节中,已经学习了:
    基础模块--数据--数据类型(整数、字符串,浮点数),
    基础模块--变量,
    基础模块--函数(input函数、print函数,len函数,type函数,转换函数)。
    基础模块--控制流(条件判断)
    本节将继续学习本节继续学习:基础篇--数据
    截图来自Python小课

    一.基础知识:数据类型中的布尔值、空值

    1、布尔值:True还有False,分别代表真与假。

    True
    False
    

    注意:True、False的首字母大写,其他小写,这是固定写法,不能写错

    2、布尔值的产生

    (1)两个数据在比较时,会产生布尔值

    a、比较数值是否相等,产生布尔值
    例如:控制流章节,学习的“女王的烦恼”案例中:

    weather = input('请回答:今晚下雨or没下雨')
    if weather =='下雨':
            print('我和唐僧可以在一起。')
    

    说明:
    if条件后的变量,weather里的数据和 ‘下雨’ 这个数据就是在做比较,如果两个数据相等,就为真(True);不相等,就为假(False)。
    以上即为布尔值出现的时刻,在 if 语句中,后面条件为真,即True,就会继续执行 if 下面的代码。
    b、比较数据类型是否相等,产生布尔值

    '杭州'=='杭州'          #判断左边文本是否和右边文本相等
    '杭州'!='深圳'          #判断左边文本是否和右边文本不相等,其中!= 代表不等于
    3>5                    #左边数值是否大于右边数值
    3<5                    #左边数值是否小于右边数值
    

    结合print() 函数,把这些数值比较的结果显示在屏幕上,会显示布尔值True或者是False;

    本地Python环境运行
    这4行代码的本质:
    第1行代码:字符串'杭州'和字符串'杭州'做是否相等的比较,结果正确,所以打印为True。
    第2行代码:字符串'杭州'和字符串'深圳'做比较,结果不相等,【!=】代表不等号,结果正确,打印为True。
    第3行代码:整数3>整数5,这个比较的结果是错误的,所以打印为False。
    第4行代码:整数3<整数5,这个比较的结果是正确的,所以打印为True。
    小结:
    Q1:【==】和【!=】,等于和不等于这2个判断条件,在判断中用得非常多,且形式特殊;
    Q2:在代码中,A == B表示A和B相等,“==”表示相等关系;而变量中a=5的“=”表示赋值;
    Q3:一般不会直接在代码中写下True或是False,但是它们会隐藏在代码中,当某些语句被判断为真的时候,就执行某些命令
    (2)Python中默认的数据本身作为条件,被判断真假,产生布尔值

    Python中已经设定好什么数据为真,什么为假,最常见的默认设置如下:
    判定为假的情况有:False;0;''(空字符串);[](空列表);{}(空字典);None。

    判定为真的情况有:True;任意整数,任意浮点数;有数据的字符串;有数据的列表;有数据的字典

    注意:None,代表的是空值,自成一派,数据类型是NoneType,类似于excel中的“\”,无数据时的斜划线;

    None和0的区别,0是整数0,并不是什么都没有

    案例:整数本身作为条件,被判断真假

    if 1:
        print('熊猫')
    

    结果输出:

    熊猫
    

    这行代码的本质:
    输入代码:使用了条件判断的代码,终端打印出了'熊猫',说明 if 后面的条件为真,且if 后面接的不是一个条件,而是一个数字。
    整数1在这里就是作为一个条件,被判断为真(True),这就是数值本身作为一个条件,被判断真假。
    案例:字符串本身作为条件,被判断真假

    if '开心':
            print('熊猫')
    if'':
            print('熊猫')
    
    结果显示: 本地Python环境运行

    代码本质:
    第1段代码:'开心'这个字符串作为一个条件时,被判定为真,因此if后面的条件满足,计算机会执行if的下一行代码;
    第2段代码:而 ''(空字符串)本身作为一个条件时,被判定为假,if后面的条件为假,计算机不会执行if的下一行代码。

    3、布尔值参与运算

    最常见的逻辑判断是:or、and、not,三种运算,类似于Excel中的函数运算。

    A、关于or的运算逻辑——两个值中一个值为真,即为真。

    新符号——【or】,or 连接着两个布尔值,只要其中一个布尔值为真,运算结果就可以为真,or的中文是或的意思。
    or运算的规则:

    True  or True       输出“为真”
    True  or False      输出“为真”
    False   or True     输出“为真”
    False  or False     输出“为假”
    

    例如:
    女王的烦恼中,对未来国王的要求是要么是达官显贵,要么是富可敌国,两个条件,只要其中一个为符合,就okay

    v1 = input('对方是达官显贵吗?')
    v2 = input('对方是富可敌国吗?')
    if v1=='是达官显贵'or v2=='是富可敌国':
        print('女王的要求通过了')
    else:
        print('女王的要求没通过')
    
    运行结果: 本地Python环境运行

    代码运行本质:针对第一个问题,在输入“是达官显贵”后,进入第二个问题,再次输入“是富可敌国”,则返回其中的结果“女王的要求通过了”。

    B、关于and的运算逻辑——只有两个条件都为真,才为真。

    新符号——【and】,and 连接着两个布尔值,必须满足两个布尔值为真,运算结果就可以为真,and的中文是且的意思。
    or运算的规则:

    True  or True       输出“为真”
    True  or False      输出“为假”
    False   or True     输出“为假”
    False  or False     输出“为假”
    

    例如:
    女王的烦恼中,对未来国王的要求既要善良,也要好看,两个条件,必须同时满足,她才满意

    v3 = input('对方善良吗?')
    v4 = input('对方好看吗?')
    if v3=='善良'and v4=='好看':
            print('女王的要求通过了')
    else:
            print('女王的要求没通过')
    
    运行结果: 本地Python环境运行

    代码运行本质:针对第一个问题,在输入“善良”后,进入第二个问题,再次输入“好看”,则返回其中的结果“女王的要求通过了”。

    C、关于not的运算逻辑——它只连接一个布尔值,表示相反的意思

    新符号——【not】
    not 运算规则:

    not True      为假
    not False     为真
    

    例如:

    a =5
    b =-1
    c =0
    d =7
    if a<b and c<d:
            print('True')
    else:
            print('False')
    

    运行结果:

    False
    

    代码本质:如果a=5 小于b=-1 且c=0 小于 d=7,则输出“True”,否则输出False;

    (注:2018.11.21,Python编程,捡破烂儿的笨小孩学习小记,有用就给个小心心哟,后续持续更新ing)

    相关文章

      网友评论

        本文标题:Python小课笔记--Python基础:布尔值和空值处理

        本文链接:https://www.haomeiwen.com/subject/erhgfqtx.html