
__abstractmethods__
import abc
class ElectronicDevice(abc.ABC):
@abc.abstractmethod
def turn_on(self):
pass
@abc.abstractmethod
def turn_off(self):
pass
@property
@abc.abstractmethod
def is_on(self):
pass
class Television(ElectronicDevice):
def __init__(self):
self._is_on = False
def turn_on(self):
if not self._is_on:
self._is_on = True
print("Television is now ON.")
def turn_off(self):
if self._is_on:
self._is_on = False
print("Television is now OFF.")
@property
def is_on(self):
return self._is_on
print(ElectronicDevice.__abstractmethods__) # Output: frozenset({'turn_on', 'turn_off', 'is_on'})
print(Television.__abstractmethods__) # Output: frozenset()get_cache_token()
update_abstractmethods()
範例 – 計算面積
範例 – 影像處理
參考資料
Last updated