Итак, у меня есть код Python 3 вроде этого:
from abc import ABC, abstractmethod
from datetime import datetime
class IfaceA(ABC):
@abstractmethod
def pass_data(self, data: str):
pass
class IfaceB(ABC):
@abstractmethod
def pass_data(self, data: datetime):
pass
class MyClass(IfaceA, IfaceB):
def pass_data(self, data: str):
print("str", data)
def pass_data(self, data: datetime):
print("datetime", data)
def main():
c = MyClass()
c.pass_data("Any string.")
c.pass_data(datetime.now())
if __name__ == "__main__":
main()
, и он дает мне такой вывод:
datetime Any string.
datetime 2020-07-13 02:00:34.676715
The IfaceA.pass_data метод с аргументом str не использовался.
Есть ли способ заставить это работать как в C ++?