測試物件是否為 None 並分配它
如果物件是 None
,則通常需要為物件指定一些內容,表示尚未分配物件。我們將使用 aDate
。
最簡單的方法是使用 is None
測試。
if aDate is None:
aDate=datetime.date.today()
(注意說 is None
而不是 == None
更像 Pythonic。)
但是,通過利用 not None
將在布林表示式中評估為 True
的概念,可以略微優化這一點。以下程式碼是等效的:
if not aDate:
aDate=datetime.date.today()
但是有更多的 Pythonic 方式。以下程式碼也是等效的:
aDate=aDate or datetime.date.today()
這是一個短路評估 。如果 aDate
被初始化並且是 not None
,則它被分配給自己而沒有淨效應。如果它是 is None
,則 datetime.date.today()
被分配給 aDate
。