實現我想要做的一些參數來檢查一個類的實例,並可能返回None
,如果它沒有意義,甚至創建對象。
我已閱讀文檔,但我不明白在這種情況下返回。
class MyClass:
def __new__(cls, Param):
if Param == 5:
return None
else:
# What should 'X' be?
return X
我應該X
在return X
?
- 它不可能是
self
因爲對象不存在,卻又如此self
是不是在這方面有效的關鍵字。
B部分
綁在我的問題,我不明白需要有cls
參數。
如果您打電話給MyClass
的構造函數 - var = MyClass(1)
- 是不是cls
總是MyClass
?
它怎麼可能是其他的東西?
根據該文檔,cls
在object.__new__(cls[, ...])
是:
. . .the class of which an instance was requested as its first argument.
你最有可能比返回'None'更適合拋出異常。 – DeepSpace
@DeepSpace注意。但在某些情況下返回「無」可能是有意義的。 – Adrian
沒關係,只要你記得那個。 – DeepSpace