Is there a way to know in advance if a function definition will overwrite a previous one?

the docstring seems to confirm this:

  The __init__() function in a module executes immediately after the module is loaded at runtime
  for the first time. It is called once, after all other statements in the module have been
  executed. Because it is called after fully importing the module, **__init__ functions of
  submodules will be executed first**.