Vraag Meerdere mappen en / of submappen in IPython Notebook-sessie?


De IPython-documentatiepagina's suggereren dat het openen van verschillende sessies van de IPython-notebook de enige manier is om met opgeslagen notebooks in verschillende mappen of subdirectories te communiceren, maar dit wordt nergens expliciet bevestigd.

Ik sta voor een situatie waarbij ik mogelijk moet communiceren met honderden verschillende notebooks, die zijn geclassificeerd op basis van verschillende eigenschappen en zijn opgeslagen in submappen van een hoofddirectory. Ik heb die hoofddirectory ingesteld (laten we het noemen /main) in de ipython_notebook_config.py configuratiebestand als standaarddirectory.

Wanneer ik de IPython-notebook start, toont het inderdaad alle opgeslagen notebooks die zich binnenin bevinden /main (maar niet opgeslagen notitieblokken in submappen binnen /main).

Hoe kan ik één IPython-dashboard bereiken waarin de notebooks worden weergegeven /main  en ook toont subdirectories, laat ik een subdirectory uitvouwen en uit de inhoud ervan kiezen, of laat ik alleen alle notebooks uit alle submappen zien?

Om dit te doen door telkens nieuwe exemplaren van IPython te lanceren, is helemaal geen sprake van.

Ik ben bereid om te sleutelen aan de broncode als ik moet voor deze mogelijkheid. Het is een uiterst basaal soort functie, we hebben het nodig en het is verrassend dat dit niet alleen het standaard IPython-gedrag is. Voor een willekeurig aantal opgeslagen notebooks over misschien 10 of 15, is deze functie noodzakelijk.


30
2018-06-13 19:19


oorsprong


antwoorden:


De IPython-documentatiepagina's suggereren dat het openen van verschillende sessies van de IPython-notebook de enige manier is om met opgeslagen notebooks in verschillende mappen of subdirectories te communiceren, maar dit wordt nergens expliciet bevestigd.

Ja, dit is een stroom (tijdelijk) Beperking van de Notebook-server. Ondersteuning voor meerdere mappen is erg hoog in de lijst met taken van de notebook (helaas is die lijst lang en er zijn er maar een paar die dagwerk hebben), het is er gewoon nog niet. Tegen 0,14 (Fall, waarschijnlijk), zou je geen reden moeten hebben om meer dan één nb-server te gebruiken, maar voor nu is dat de enige optie voor meerdere mappen. Het enige wat ontbreekt voor een eenvoudige eerste versie is:

  1. Individuele notitieblokken koppelen aan mappen (tamelijk triviaal), en
  2. Web UI voor eenvoudige bestandsysteemnavigatie (iets minder triviaal).

Ik ben bereid om te sleutelen aan de broncode als ik moet voor deze mogelijkheid

De beperkende factor, als je in de bron wilt rondneuzen, is de NotebookManager, die is gekoppeld aan een bepaalde map. Als u de methode list_notebooks () aanpast om submappen af ​​te handelen, bent u 90% daar.

Ik was ook nieuwsgierig, dus gooide ik een snel voorbeeld samen hier waarmee je op zijn minst notebooks in subdirs kunt lezen / uitvoeren / bewerken / opslaan (loopdiepte is beperkt tot 2, maar eenvoudig te wijzigen). Nieuwe notitieblokken bevinden zich op het hoogste niveau en er is geen gebruikersinterface om ze te verplaatsen.


20
2018-06-14 00:37



De problemen met de interface en architectuurontwerp voor ondersteuning van meerdere directory's (en meer in het algemeen voor 'project'-ondersteuning) voor iPython-notebooks zijn belangrijk om goed te krijgen. Een ontwerp is beschreven in

IPEP 16: Notebook multi-directory dashboard en URL-toewijzing

en wordt besproken op IPEP 16: Multi-directorydashboard voor notebook en URL-toewijzing · Issue # 3166 · ipython / ipython


2
2017-12-10 21:12