## Python布尔值
*****
布尔值表示两个值之一:`True`或`False`。
在编程中,您通常需要知道表达式是否为`True`或`False`。您可以在Python中求值任何表达式,并获得两个答案之一,`True`或`False`。
比较两个值时,将对表达式求值,Python返回布尔值答案:
```
print(10 > 9)
print(10 == 9)
print(10 < 9)
```
在if语句中运行条件时,Python返回`True`或`False`:
根据条件是`True`还是`False`以下来打印消息:
```
a = 200
b = 33
if b > a:
print("b is greater than a")
else:
print("b is not greater than a")
```
*****
## 评估值和变量
该`bool()`函数可让您评估任何值,并给您`True`或`False`作为回报。
示例,评估字符串和数字:
```
print(bool("Hello"))
print(bool(15))
```
评估两个变量:
```
x = "Hello"
y = 15
print(bool(x))
print(bool(y))
```
*****
## 多数Values是True
几乎所有值都会被评估为`True`是否包含某种内容。任何字符串都是`True`,空字符串除外。除了`True`以外,任何数字都是`0`。任何列表,元组,集合和字典都是`True`,空列表除外。
示例,以下内容将返回True:
```
bool("abc")
bool(123)
bool(["apple", "cherry", "banana"])
```
## 一些Values是False
事实上,没有多少Values的计算结果为`False`,除空值,例如`()`,`[]`,`{}`,`""`,数量`0`和价值`None`。当然,该`False`值的计算结果为`False`。
```
bool(False)
bool(None)
bool(0)
bool("")
bool(())
bool([])
bool({})
```
还有一个数值,或对象在这种情况下,计算结果为`False`,那就是,如果你有一个从类与制造对象`__len__`的函数,返回`0`或`False`:
```
class myclass():
def __len__(self):
return 0
myobj = myclass()
print(bool(myobj))
```
*****
## 函数可以返回布尔值
您可以创建返回布尔值的函数。
示例,打印函数的答案:
```
def myFunction() :
return True
print(myFunction())
```
您可以根据函数的布尔答案执行代码:
```
def myFunction() :
return True
if myFunction():
print("YES!")
else:
print("NO!")
```
Python还具有许多内置函数,它们返回一个布尔值,例如该`isinstance()`函数,该函数可用于确定对象是否属于某种数据类型:
```
x = 200
print(isinstance(x, int))
```