1. 程式人生 > >Python3中真真假假True、False、None等含義詳解

Python3中真真假假True、False、None等含義詳解

含義 opera col 元素 我們 UNC 特殊 對比 token

概述

在Python中,不僅僅和類C一樣的真假類似,比如1代表真,0代表假。Python中的真假有著更加廣闊的含義範圍,Python會把所有的空數據結構視為假,比如[](空列表)、{}(空集合)、‘‘(空字符串)等,而與之相反的非空數據結構即為真

簡單對比代碼:

# 遍歷列表中的示例元素,獲取對應的真假:
for elenment in [‘‘, ‘S‘, [], [1, 2], {}, {3, ‘SSS‘}, 0, 0.0, 1, None]:
    if elenment:
        print(elenment, True) 
    else:
        print(elenment, False) 

示例結果:

 False
S True
[] False
[1, 2] True
{} False
{‘SSS‘, 3} True
0 False
0.0 False
1 True
None False

None對象

在Python中None不僅僅代表False,它本身就是一個特殊的空對象,可以用來占位,比如我們可以利用None實現類似C中定義數組的方式,預定義列表的大小,實現對可能的索引進行賦值,而為賦值的索引都為None叉車配件

L = [None] * 10
print(L)

空列表定義結果

[None, None, None, None, None, None, None, None, None, None]

布爾(bool)值

在Python中布爾值,True和False不僅僅可以表示真與假,甚至可以用於數學運算:

print(True+1)
print(False+1)
print(True+False)

運算結果

2
1
1

即True為1,False為0,為何Python中布爾值可以進行數學運算? 我們可以利用isinstance驗證其是否為整型:

print(isinstance(True, int))
print(isinstance(False, int))

驗證結果:

True
True

即實質上在Python中布爾值本身是整型(int),即bool類型就是int類型的子類。

Python3中真真假假True、False、None等含義詳解