Python 布尔值(Booleans)

1、布尔值(Booleans)

在编程中,通常需要知道表达式是True还是False

可以执行Python中的任何表达式,并获得两个值之一,TrueFalse

比较两个值时,将对表达式求值,Python返回布尔值:

例如:

print(11 > 9)print(12 == 9)print(13 < 9)

在if语句中运行条件时,Python返回TrueFalse

例如:

根据条件是True还是False打印一条消息:

a = 200b = 33if b > a:    print("b 大于 a")
else: print("b 不大于 a")

2、布尔值类型的转换和变量(bool())

bool()函数可以将其它类型转换为布尔值类型TrueFalse

例如:

使用bool()对字符串和数字转换布尔值:

print(bool("Hello"))print(bool(15))

例如:

使用bool()对两个变量转换布尔值:

x = "Hello"y = 15print(bool(x))print(bool(y))

3、大多数的值都是True

如果它具有某种内容,则几乎所有值都将转换为True

除空字符串(''“”)外,任何字符串均为True

0外,任何数字均为True

任何非空的列表,元组,集合和字典都是True

例如:

以下内容将返回True:

bool("abc")bool(123)bool(["apple", "cherry", "banana"])

4、某些值是False

实际上,除了空值(例如()[]{}“”,数字0和值None。 当然,值False也可转换为False

例如:

以下将返回False:

bool(False)bool(None)bool(0)bool("")bool(())bool([])bool({})

另外一个值或对象(在这种情况下)的计算结果为False,也就是说,如果您有一个对象,该对象是由具有__len__函数的类制成的,该函数返回0False

例如:

class myclass():def __len__(self):    return 0myobj = myclass()print(bool(myobj))

5、函数方法可以返回一个布尔值

可以创建返回布尔值的函数:

例如:

打印输出函数结果:

def myFunction() :    return Trueprint(myFunction())

可以根据函数返回值布尔值判断执行代码:

例如:

打印输出“YES!” 如果函数返回True,否则打印“NO!”:

def myFunction() :    return Trueif myFunction():    print("YES!")else:    print("NO!")

Python还具有许多内置的返回布尔值的函数,例如,isinstance()函数,可用于确定对象是否属于某种数据类型:

例如:

判断对象是否为int:

x = 200print(isinstance(x, int))

6、使用示例代码

print(bool())print(bool(False))print(bool(0),bool(0.0),bool(0j))print(bool(""),bool(()),bool([]),bool({}))class alfalse():    def __bool__(self):           # 定义了 __bool__() 方法,始终返回False        return Falsef = alfalse()print(bool(f))class alzero():    def __len__(self):            # 定义了 __len__() 方法,始终返回0        return 0zero = alzero()print(bool(zero))class justaclass():    passc = justaclass()print(bool(c))                    # 一般class instance都返回为True

免责声明:以上内容(如有图片或视频亦包括在内)有转载其他网站资源,如有侵权请联系删除

咨询热线(9:00 - 18:00)
0755 - 29812418
微信公众号二维码
微信公众号二维码
微信公众号
返回顶部