广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python解惑之True和False详解
  • 767
分享到

Python解惑之True和False详解

详解PythonTrue 2022-06-04 18:06:59 767人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

前言 众所周知在python 中常用的数据类型bool(布尔)类型的实例对象(值)就两个,真和假,分别用True和False表示。在if 条件判断和while 语句中经常用到,不过在Python2.x 中,

前言

众所周知在python 中常用的数据类型bool(布尔)类型的实例对象(值)就两个,真和假,分别用True和False表示。在if 条件判断和while 语句中经常用到,不过在Python2.x 中,True 和False 却有着奇怪的用法,就是真假可以相互被替换

先看下面代码:


>>> True
True
>>> False
False
>>> if True:
...  print True
... 
True
>>> if not False:
...  print False
... 
False

这段代码逻辑理解起来没任何问题,if 判断中只要表达式的值返回 True,就执行if 代码块中的语句。再来看下一段代码:


>>> True, False = False, True
>>> True
False
>>> False
True

>>> if not True:
...  print False
... 
True
>>> if False:
...  print True
... 
False
>>> 

我把True 和False 互换了一下,就是传说中的颠倒是非黑白。真变成了假,假变成了真。于是在条件判断中,表达式的值返回False才执行代码块中的语句。究竟是什么原因呢?

解惑

在Python2.7 中,True和False是两个内建(built-in)变量,内建变量和普通自定义的变量如a, b, c一样可以被重新赋值,因此我们可以把这两个变量进行任意的赋值,比如:


True = 2
False = "abc"

甚至是True和False进行互换


tmp = True
True = False
False = tmp

互换后变量True指向了假对象,False指向了真对象:

查看图片

因此,在Python 中我们不要随意给True 和False 赋新的值,否则程序代码逻辑都会乱套了。这也算是Python2.x 中一个坑,不过在python3.x 中,终于把这个两变量变成了关键字,也就是说,程序员再也没法给这两变量赋新的值了,从此True永远指向真对象,False指向假对象,永不分离。用keyWord模块检测True 和False 是否为关键字。


>>> import keyword
>>> keyword.iskeyword('True')
False

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者使用python能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程网的支持。

--结束END--

本文标题: Python解惑之True和False详解

本文链接: https://www.lsjlt.com/news/13376.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python解惑之True和False详解
    前言 众所周知在Python 中常用的数据类型bool(布尔)类型的实例对象(值)就两个,真和假,分别用True和False表示。在if 条件判断和while 语句中经常用到,不过在Python2.x 中,...
    99+
    2022-06-04
    详解 Python True
  • Python中True(真)和False(假)判断详解
    目录前言1.True和False的逻辑取反2.if条件语句中的True和False3.pandas.DataFrame.loc 中的否定总结前言 Python中的 True和 Fal...
    99+
    2022-11-11
  • C/C++实操True and false详解
    在C11标准文档中,规定了关系运算符 <、> 、<= 、>=的运算结果,真时返回1,假时返回0,返回类型为整型。 运算符==、!=和关系运算符类似,除了运算优...
    99+
    2022-11-12
  • Python解惑之整数比较详解
    前言 在 Python 中一切都是对象,毫无例外整数也是对象,对象之间比较是否相等可以用==,也可以用is。 ==和is操作的区别是: is比较的是两个对象的id值是否相等,也就是比较俩对象是否为同一...
    99+
    2022-06-04
    整数 详解 Python
  • 使用el-checkbox-group选中后值为true和false遇到的坑怎么解决
    这篇文章主要讲解了“使用el-checkbox-group选中后值为true和false遇到的坑怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“使用el-checkbox-group选...
    99+
    2023-07-02
  • 【Python】Struct 库之 pack 和 unpack 详解
    1. 官网解析 首先是官网对于 pack 、 unpack 、calcsize以及Format Strings的描述 1.1 pack、unpack、calcsize struct.pack返回一个...
    99+
    2023-09-11
    python
  • python之next和send用法详解
    如果send不携带参数,那么send(None) 和next()的作用的相同的,如: def a(): print('aaa') p = yield '123'  #print(p) print('bbb') ...
    99+
    2023-01-30
    详解 python send
  • Python之集合详解
    目录集合的基本操作1、添加元素add()update()2、移除元素remove()clear()3、集合的交集什么是交集?intersection()3、集合的并集什么是并集?un...
    99+
    2022-11-12
  • Python GUI之tkinter详解
    展示 import tkinter if __name__ == '__main__': win = tkinter.Tk() #设置标题 win...
    99+
    2022-11-12
  • python之列表详解
    文章目录 一.创建列表1.基于弱数据类型语言的定义2.通过全局函数list()定义3.创建空列表 二.访问列表的值1.通过下标索引2.通过for循环遍历3.通过while循环遍历 ...
    99+
    2023-10-18
    python 开发语言 后端 列表
  • python爬虫教程之bs4解析和xpath解析详解
    目录bs4解析原理:如何实例化BeautifulSoup对象:用于数据解析的方法和属性:xpath解析xpath解析原理:实例化一个etree对象:xpath( ‘xpa...
    99+
    2022-11-13
  • python数据解析之XPath详解
    目录XPathXPath使用方法案例—58二手房总结XPath XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。 x...
    99+
    2022-11-12
  • Python之map()函数详解
    文章目录 一、map() 函数简介1.1 map() 函数基本语法1.2 map() 函数+ lambda表达式1.3 map() 函数输入多个可迭代对象iterable1.4 查看返回的迭代...
    99+
    2023-09-24
    python 开发语言
  • python之np.sum()用法详解
        python库numpy提供的求和方法np.sum(),可以对数组和矩阵进行求和。sum方法可以接收多个参数,主要是数组a,坐标轴axis,数据类型dtype,初始值initial。其中,axis对于我们来说比较容易迷糊,这个值对求...
    99+
    2023-09-16
    python numpy sum axis dtype
  • python之sys模块详解
    前言 sys模块是与python解释器交互的一个接口。sys 模块提供了许多函数和变量来处理 Python 运行时环境的不同部分。 处理命令行参数 在解释器启动后, argv 列表包含了传递给脚本的所...
    99+
    2023-09-15
    python 开发语言 pycharm
  • Python探索之SocketServer详解
    SocketServer,网络通信服务器,是Python标准库中的一个模块,其作用是创建网络服务器。SocketServer模块定义了一些类来处理诸如TCP、UDP、UNIX流和UNIX数据报之上的同步网络...
    99+
    2022-06-05
    详解 Python SocketServer
  • Python 集合之set详解
    目录引言集合的定义集合常用操作集合添加元素集合移除元素集合统计、清空元素集合元素获取(遍历)集合之间的运算集合差运算 -集合并运算 |集合交运算 &集合异或运算 ^应用场景普...
    99+
    2022-11-12
  • Python之re模块详解
    目录Python——re模块 简介预定义字符特殊字符反斜杠问题匹配方法总结Python——re模块  简介 定义:re模块称为正则表达式; 作用:创建一个"规则表...
    99+
    2022-11-12
  • Python绘图之详解matplotlib
    一、matplotlib介绍 matplotlib是python从matlab继承的绘图库,可以满足大部分的日常使用,是目前最流行的底层绘图库。 二、matplotlib的使用 (一...
    99+
    2022-11-12
  • python之sqlite3使用详解
    Python SQLITE数据库是一款非常小巧的嵌入式开源数据库软件,也就是说没有独立的维护进程,所有的维护都来自于程序本身。它使用一个文件存储整个数据库,操作十分方便。它的最大优点是使用方便,功能相比于其它大型数据库来说,确实有...
    99+
    2023-01-31
    详解 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作