108 votes

Est-il possible de copier une cellule d'un carnet Jupyter à un autre ?

J'essaie de copier des cellules d'un cahier Jupyter à un autre. Comment cela est-il possible ?

100voto

Nikolai K. Points 407

Cette fonctionnalité a été introduite dans Jupyter Notebook 5.0 . Utilisez pip install notebook --upgrade pour passer à la dernière version.

Les anciens raccourcis C , V y X ne fonctionnent que pour copier et coller dans un cahier. Pour le faire à travers les onglets, vous devez utiliser Ctrl-C y Ctrl-V ( Cmd-C y Cmd-V sur Mac).

Note sur les cellules multiples : actuellement (jupyter 6.0.0) sur Mac+chrome utiliser shift-clic pour sélectionner les cellules puis cmd-C ne fonctionne PAS, alors que l'utilisation du clavier avec shift-down-flèche fonctionne ! (merci drevicko de nous l'avoir signalé)

2 votes

pip install notebook --upgrade a fonctionné pour moi seulement jusqu'à la version 4.3, mais pip install notebook==5.1.0rc2 a fait son travail

3 votes

Votre méthode ne fonctionne que pour moi pour copier et coller des cellules de balisage à travers des carnets Jupyter. Lorsque je fais Ctrl - C sur les cellules de code, cela m'envoie juste en mode édition. Qu'est-ce que j'ai fait de mal ici ? Merci.

2 votes

Cela ne fonctionne pas dans Firefox (voir : bogue )

14voto

Avec jupyter 5.0.0, le copier-coller d'une ou plusieurs cellules d'un cahier vers un autre fonctionne avec Cmd C Cmd V (Mac).

Pour copier plusieurs cellules ensemble, sélectionnez la première puis la dernière avec la flèche de déplacement (haut ou bas).

La barre d'outils ne fonctionne pas à cette fin.

Voir aussi https://github.com/jupyter/notebook/issues/2336

6 votes

Ctrl-C/Ctrl-V sur linux. Et lorsque vous collez, assurez-vous que vous êtes en mode Commande (ligne bleue à gauche de la cellule), sinon toutes les cellules copiées seront réduites en une seule si vous êtes en mode Édition (ligne verte). Appuyez sur Esc pour passer d'un mode à l'autre.

3 votes

NOTE : actuellement (jupyter 6.0.0) sur Mac+chrome l'utilisation de shift-clic pour sélectionner les cellules puis cmd-C ne fonctionne PAS !!! En revanche, l'utilisation de shift-flèche descendante fonctionne (comportement étrange, mais c'est ainsi !). Visuellement, shift-clic et shift-flèche descendante semblent identiques, mais apparemment non...

3voto

Je ne l'ai pas fait moi-même, mais la pratique générale est d'éviter de le faire car cela peut perturber la cellule JSON. Ce n'était même pas possible jusqu'à quelques versions auparavant. Des posts récents sur Github ont permis de le faire. Copiez-collez la cellule en question dans un éditeur de code tel qu'Atom ou Sublime Text, effectuez les modifications que vous voulez faire, puis collez-la dans le nouveau carnet Jupyter. Cela devrait fonctionner.

0 votes

Je comprends votre recommandation, mais j'aimerais quand même savoir comment cela est possible.

0 votes

Cette demande a été fermée dans Github, ce qui signifie qu'elle a été résolue. Vous pouvez essayer ce lien et voir si vous pouvez coder quelque chose comme ça :

2 votes

Je l'ai déjà lu avant de le demander. Ils disent que le problème est résolu sans dire comment.

3voto

Swapnil Agarwal Points 31

Pour Windows -
Utilisez Ctrl + Shift + C pour copier des cellules après les avoir sélectionnées en utilisant shift + arrow clés.

Ensuite, passez au cahier dans lequel vous voulez copier les cellules sélectionnées et passez en mode commande dans celui-ci en appuyant sur Esc clé. Ensuite, utilisez Ctrl + Shift + V pour coller les cellules de ce cahier.

Note- Je ne l'ai pas testé sous Linux mais cela devrait fonctionner comme la procédure ci-dessus.

-6voto

Siva Kumar Points 77

Vous pouvez télécharger le contenu de la cellule en tant que fichier .py à partir de jupier et ensuite vous pouvez copier et coller où vous voulez.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X