Probablement une question idiote, mais je ne l'ai pas trouvée. L'éditeur de code Visual Studio a un très bon moyen de travailler avec Jupyter Notebooks. Je peux modifier les cellules directement dans vscode et les exécuter. Maintenant, il serait facile de travailler avec le contrôle de version.

Mais je n'ai pas trouvé de moyen de le reconvertir en ordinateur portable! Comment générer un notebook à partir du fichier python généré?

Je comprends que le portable ne contiendrait pas les cellules de sortie.

2
neves 19 nov. 2018 à 17:10

3 réponses

Meilleure réponse

Il y a une option dans la fenêtre Python interactive qui a la sortie du notebook:

Export option in interactive window

C'est vraiment cool, maintenant vous pouvez travailler dans un fichier Python et avoir une interface vraiment sympa avec votre système de configuration de version (Git).

Oui, c'était une question idiote :-)

1
neves 21 nov. 2018 à 00:29

La bibliothèque Jupytext prend en charge le format de cellule basé sur le pourcentage utilisé par VSCode-Python, ainsi que d'autres formats d'échange de blocs-notes basés sur du texte:

https://github.com/mwouts/jupytext

0
Isaiah Norton 7 août 2019 à 16:31

Si vous avez besoin de plus de contrôle sur la façon dont la conversion en ipynb est effectuée (ou si vous avez besoin de références croisées), vous pouvez essayer Pandoctools. Il peut exporter des documents VSCode * .py vers n'importe quel format de sortie Pandoc ou vers un notebook Jupyter.

Par exemple, vous pouvez créer et enregistrer Noyau Jupyter. Par exemple, il peut être nommé "nn". Cela devrait être le même noyau que celui que vous avez sélectionné dans VSCode (vous le sélectionnez par chemin mais VSCode utilise toujours les spécifications des noyaux installés sous le capot). Ajoutez ensuite un chapeau au fichier Python, divisez le document en cellules, fournissez les paramètres et définissez les cellules Markdown (la ligne de métadonnées commentée serait exportée au format pdf au lieu d'ipynb; je recommande d'ouvrir ipynb dans nteract application native):

"""
---
kernels-map:
  py: nn
jupyter:
  kernelspec:
    display_name: nn
    language: python
    name: nn
pandoctools:
  # out: "*.pdf"
  out: "*.ipynb"
...

# Markdown section title 1

Some **static** Markdown text.
"""


# %% {echo=False}
import IPython.display as ds
import math
import sugartex as stex


# %% {markdown}
"""
# Markdown section title 2

The quick brown Fox jumps over the lazy dog.
"""


# %%
ds.Markdown(stex.pre(f'''

Some **dynamic** Markdown text with SugarTeX formula: ˎα^˱{math.pi:1.3f}˲ˎ.
It works because of the `Markdown` display option and `sugartex` Pandoc filter.
Acually `stex.pre` is redundant here but it is needed when the text is imported
or read from somewhere instead of being written in the same document.

'''))

Puis convertissez le fichier via pandoctools: faites glisser et déposez le fichier vers le raccourci / exécutable de pandoctools ou «ouvrez avec» l'exécutable de pandoctools.

Regarde aussi:

  • Deux articles d'introduction se trouvent au début de ce README,
  • exemples de conversion d'entrée-sortie qui ont des références croisées!
  • comment utiliser Pandoctools et c'est CLI ,
  • comment utiliser Knitty qui collecte les sorties Jupyter et modifie son paramètres .
1
Peter Zagubisalo 7 août 2019 à 16:45