對於有編程經驗的程序員們都知道條件語句的寫法:
以C++爲例:
if (condition)
{
doSomething();
}
對於Python中的條件判斷語句的寫法則是下面的樣子:
if (condition):
doSomething()
那麼對於條件語句中的condition什麼時候爲真什麼時候爲假呢?
在C++/Java等高級語言中,如果條件的值爲0或者引用的對象爲空指針,那麼該條件即爲False。
在Python中如果condition爲 '',(),[],{},None,set()那麼該條件爲Flase,否則爲True。
下面爲Python的測試語句:
1.針對字符串的測試
>>> condition=''
>>> print 'True' if condition else 'False'
False
>>> condition='test'
>>> print 'True' if condition else 'False'
True
2.針對原組的測試
>>> condition=()
>>> print 'True' if condition else 'False'
False
>>> condition=(1,2)
>>> print 'True' if condition else 'False'
True
3.針對列表的測試
>>> condition=[]
>>> print 'True' if condition else 'False'
False
>>> condition=['a','b']
>>> print 'True' if condition else 'False'
True
4.針對字典的測試
>>> condition={}
>>> print 'True' if condition else 'False'
False
>>> condition={'k':'v'}
>>> print 'True' if condition else 'False'
True
5.針對None的測試
>>> condition=None
>>> print 'True' if condition else 'False'
False
6.針對set()的測試
>>> condition=set()
>>> print 'True' if condition else 'False'
False
>>> condition.add('a')
>>> print 'True' if condition else 'False'
True