python8/2>5表达式是true吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python8/2>5表达式是true吗?相关的知识,希望对你有一定的参考价值。
参考技术A 众所周知在Python 中常用的数据类型bool(布尔)类型的实例对象(值)就两个,真和假,分别用True和False表示。在if 条件判断和while 语句中经常用到,不过在Python2.x 中,True 和False 却有着奇怪的用法,就是真假可以相互被替换先看下面代码:
1
2
3
4
5
6
7
8
9
10
11
12
>>>True
True
>>>False
False
>>>if True:
...print True
...
True
>>>if not False:
...print False
...
False
这段代码逻辑理解起来没任何问题,if 判断中只要表达式的值返回 True,就执行if 代码块中的语句。再来看下一段代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
>>>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一样可以被重新赋值,因此我们可以把这两个变量进行任意的赋值,比如:
1
2
True = 2
False = "abc"
甚至是True和False进行互换
1
2
3
tmp= True
True = False
False = tmp
互换后变量True指向了假对象,False指向了真对象:
1-20093014304A34.png
因此,在Python 中我们不要随意给True 和False 赋新的值,否则程序代码逻辑都会乱套了。这也算是Python2.x 中一个坑,不过在Python3.x 中,终于把这个两变量变成了关键字,也就是说,程序员再也没法给这两变量赋新的值了,从此True永远指向真对象,False指向假对象,永不分离。用keyword模块检测True 和False 是否为关键字。 参考技术B 答案:不是True,是False。
因为8/2==4,而4<5,那么,8/2>5与4<5相矛盾,则python运行print(8/2>5)的结果返回False。
青少年编程 电子学会python编程等级考试一级真题解析(选择题)2020-12
一、选择题(共25题,每题2分,共50分)
1、执行语句print(10==10.0)的结果为?
A、10
B、10.0
C、True
D、False
答案:C
考点分析:考查print输出语句,里面是表达式判断10是否等于10.0,整数和小数在做比较运算的时候是可以相互转化的,10.0也就是10,所以两个相等,返回结果逻辑真值(True),答案C
2、执行语句y=4**3后,变量y的值为?
A、0
B、12
C、64
D、81
答案:C
考点分析:考查运算符知识,重点考查幂运算(**),y=4**3意思是求4的3次方,
以上是关于python8/2>5表达式是true吗?的主要内容,如果未能解决你的问题,请参考以下文章