%aimport => Import modules for automatic reloading. %aimport List modules to automatically import and not to import. %aimport foo Import module 'foo' and mark it to be autoreloaded for %autoreload 1 %aimport foo, bar Import modules 'foo', 'bar' and
(self, parameter_s='', stream=None)
| 488 | |
| 489 | @line_magic |
| 490 | def aimport(self, parameter_s='', stream=None): |
| 491 | """%aimport => Import modules for automatic reloading. |
| 492 | |
| 493 | %aimport |
| 494 | List modules to automatically import and not to import. |
| 495 | |
| 496 | %aimport foo |
| 497 | Import module 'foo' and mark it to be autoreloaded for %autoreload 1 |
| 498 | |
| 499 | %aimport foo, bar |
| 500 | Import modules 'foo', 'bar' and mark them to be autoreloaded for %autoreload 1 |
| 501 | |
| 502 | %aimport -foo |
| 503 | Mark module 'foo' to not be autoreloaded for %autoreload 1 |
| 504 | """ |
| 505 | modname = parameter_s |
| 506 | if not modname: |
| 507 | to_reload = sorted(self._reloader.modules.keys()) |
| 508 | to_skip = sorted(self._reloader.skip_modules.keys()) |
| 509 | if stream is None: |
| 510 | stream = sys.stdout |
| 511 | if self._reloader.check_all: |
| 512 | stream.write("Modules to reload:\nall-except-skipped\n") |
| 513 | else: |
| 514 | stream.write("Modules to reload:\n%s\n" % ' '.join(to_reload)) |
| 515 | stream.write("\nModules to skip:\n%s\n" % ' '.join(to_skip)) |
| 516 | elif modname.startswith('-'): |
| 517 | modname = modname[1:] |
| 518 | self._reloader.mark_module_skipped(modname) |
| 519 | else: |
| 520 | for _module in ([_.strip() for _ in modname.split(',')]): |
| 521 | top_module, top_name = self._reloader.aimport_module(_module) |
| 522 | |
| 523 | # Inject module to user namespace |
| 524 | self.shell.push({top_name: top_module}) |
| 525 | |
| 526 | def pre_run_cell(self): |
| 527 | if self._reloader.enabled: |