La %run
magia tiene un parámetro file_finder
que usa para obtener la ruta completa al archivo para ejecutar (ver aquí ); como nota, solo busca en el directorio actual, agregando ".py" si es necesario.
No parece haber una forma de especificar qué buscador de archivos usar desde la %run
magia, pero no hay nada que le impida definir su propio comando mágico que llama a%run
con un buscador de archivos apropiado.
Como truco muy desagradable, podría anular el predeterminado file_finder
con el suyo:
IPython.core.magics.execution.ExecutionMagics.run.im_func.func_defaults[2] = my_file_finder
Para ser honesto, al ritmo que cambia la API de IPython, es tan probable que continúe funcionando como lo es definir su propia magia.
import <module>
es esencialmente el mismo queexec(<moduleSource>)
en JavaScript o Perl.