自學Python編程【第十六節】bool類型轉換
哈嘍!同學們,昨天所講的Python編程中的類型轉換,你都學會了嗎?str(x)、float(x)、int(x),代表什么你還記得嗎?昨天最后留的bool類型的轉換,你想清楚了嗎?
昨天最后留的幾句關于bool類型的轉換,其中有一行:
bool('False')
print一下結果,會發現是True。這是什么原因?
因為在Python中,以下數值會被認為是False:
為0的數字,包括0,0.0
空字符串,包括'',""
表示空值的None
空集合,包括(),[],{}
其他的值都認為是True。
None是Python中的一個特殊值,表示什么都沒有,它和0、空字符、False、空集合都不一樣。關于集合,我們后面的課程再說。
所以,‘False’是一個不為空的字符串,當被轉換成bool類型之后,就得到True。
同樣bool(' ')的結果是True,一個空格也不能算作空字符串。
bool('')才是False。
在if、while等條件判斷語句里,判斷條件會自動進行一次bool的轉換。比如
a = '123'
if a:
print 'this is not a blank string'
這在編程中是很常見的一種寫法。效果等同于
if bool(a)
或者
if a != ''
恭喜你在Python自學的道路上又堅持了一天,記住bool() False的幾種形式,那么剩下都是True,這兩天大家在學習的過程中,記憶的東西比較多,可能會感到枯燥、乏味,但是堅持下去將Python語法這一關過了,以后會越來越有趣的哦,加油!
好啦,今天的分享到這里就結束了,希望大家能夠持續關注馬哥教育官網,每天都會有大量優質內容與大家分享!
聲明:文章來源于網絡,侵刪!