Waarom PY naar IPYNB converteren?
Onderzoekers en data scientists gebruiken .ipynb-notebooks in JupyterLab om code interactief uit te voeren, inline grafieken te bekijken en markdown-uitleg toe te voegen tussen codegedeelten. Het converteren van een gewoon .py-script naar .ipynb maakt het stap voor stap uitvoerbaar in die omgeving zonder de code te herschrijven.
Hoe PY naar IPYNB te converteren
jupytext OPEN-SOURCE
Voer pip install jupytext uit en daarna jupytext --to notebook file.py; plaats # %%-commentaren in de .py-broncode om celgrenzen te definiëren vóór de conversie voor het beste resultaat.
Jupyter (nbconvert) FREE
Voer jupyter nbconvert --to notebook --execute file.py uit om het script te converteren en uit te voeren, waarbij de uitvoer in de .ipynb wordt opgeslagen; laat --execute weg om te converteren zonder uit te voeren.
Over deze formaten
Een .py-bestand is een Python-broncodebestand - platte tekst die een programma of script bevat dat is geschreven in de taal Python. Om de code te lezen, opent u deze in een willekeurige…
Open .PY details →Een .IPYNB-bestand is gekoppeld aan IPython notebook, een misc-bestand.
Open .IPYNB details →Kwaliteit & waar op te letten
- Celgrenzen worden geschat wanneer er geen
# %%-markeringen aanwezig zijn - voeg# %%toe aan je.py-bestand vóór de conversie om precies te bepalen waar elke cel begint. - De geconverteerde
.ipynbbevat geen cel-uitvoer; grafieken, print-statements en andere resultaten worden gegenereerd wanneer je de notebook uitvoert in JupyterLab. - nbconvert behandelt de volledige
.pyals één enkele codecel, tenzij het bestand al# In[]:celmarkeringen bevat; jupytext gaat eleganter om met gewone scripts.
Veelgestelde vragen
Zullen mijn Python-imports en functies hetzelfde werken in de notebook?
Kan ik de notebook terug converteren naar een .py-bestand?
jupytext --to py file.ipynb uit om terug te gaan naar een gewoon Python-script.Wat is het verschil tussen jupytext en nbconvert voor deze taak?
# %%-markeringen; nbconvert is ingebouwd in Jupyter en kan de code uitvoeren en resultaten opslaan tijdens de conversie.