Does Python have C#/Java-style interfaces

No, python does not have any equivalent of interfaces . Since Python does support multiple inheritance, you can easily emulate the equivalence of interfaces. What that means is that interfaces are implicit in Python : if an object conforms to an interface, you can use it, no need to declare it like you would in statically typed languages such as Java or C# . The closest thing is probably the abstract base classes module, which allows you to define common methods for a set of classes.
class Abstract: def myFunc(self): raise NotImplementedError("The method not implemented")
May be you can use something like the above. This will act as an abstract class . Every subclass is thus forced to implement myFunc(). Interfaces are concepts that belong to statically typed languages such as Java or C#, and do not really apply to dynamic language such as Python.