{{tag>dev python jupyter}}
====== Jupyter notebook ======
Le nom Jupyter vient de la contraction des 3... ia, **Pyt**hon et **R**. L'extension d'un fichier notebook produit par Jupyter est **.pynb** pour **IPy*... === Installation =====
L'installation de jupyter notebook est détaillée dans le wiki [[dev:python:jupyter-notebook:install| installer jupyter notebook]].
=====
{{tag>software python jupyter jupyterlab notebook install docker todo}}
====== Installer Jupyter via Do... =
Il existe plusieurs images, la version ''scipy-notebook'' inclus des packages populaires de l'écosyst... e Python:
<code bash>
docker pull jupyter/scipy-notebook:python-3.9.6
docker run --rm -p 10000:8888 -e... B=yes -v "${PWD}":/home/jovyan/work jupyter/scipy-notebook:python-3.9.6
</code>
===== Authentification
n}}
====== Python: introduction ======
Quelques notes à propos des spécificités du langage Python basé... la mémoire
* langage interprété et EDI divers (notebooks IDLE etc)
===== Droits et licences =====
P... es noms sont sensibles à la casse de caractère.
<note>
Prendre l'habitude de nommer correctement ses va... tomatique de la documentation à partir du code.
</note>
Par convention les variables sont en minuscules
riables commençant par un blanc souligné ''_''.
<note>
Cette pratique n'est pas recommandée en producti... s avoir a taper une liste importante d'imports.
</note>
==== from <module_name> import <name> as <alt_n... port est exécutée
>>> bar()
arg = corge
</code>
<note>
Python 3 n'autorise pas la syntaxe ''import *'' depuis une fonction
</note>
Pour finir un bloc **try** permet au code appel
{{tag>dev python jupyter notebook}}
====== Jupyter Notebook ======
Un notebook est un environnement web interactif proposant un mélange de texte et de code po... ement virtuel:
<code bash>
python -m venv jupyter-notebook
</code>
Activation de l'environnement, mise
lors transmis à l'interpréteur pour execution.
<note>
En général, on utilise cet entête uniquement sur... eur : on parle de point d'entrée (entry point).
</note>
<note>
Le **shebang** est est interprété seulement par les systèmes GNU/Linux.
</note>
La note concernant les erreurs obtenues lorsque
tions pouvant être levées par un seul bloc try.
<note warning>
En Python on peut définir une close **ex... uites par le code sans y réagir spécifiquement.
</note>
De manière générale on capture toujours les exc... r le diagnostic du problème dans le programme.
<note>
Une bonne pratique est de capturer les exception... s les plus appropriées à l'origine du problème.
</note>
Pour connaître la liste des exceptions pouvant
Paul a 12 ans.
</code>
<note>
Au sein d'une f-string la section entre accolade... ésultat est utilisé pour remplir les accolades.
</note>
Via une **f-string** et la fonction **format** ... mple. Voir section [[#expressions_regulieres]].
<note>
La raw-string désactive l'interprétation des **'... *'\'** pour qu'il n'y ait pas d'interprétation.
</note>
==== Formatage dans un print ====
La fonction
l'objet créé en mémoire il ne sera pas modifié.
<note>
Il est important d'appréhender les spécificités ... de dictionnaires et tuple unpacking notamment).
</note>
Un tuple est généralement défini par une paire ... ', 'b', 'c')
>>> (42, '!')
(42, '!')
</code>
On notera tout de même que les parenthèses sont facultati... tuple
>>> t2 = '4',
>>> type(t2)
tuple
</code>
<note warning>
Comme montré ci-dessus, pour un tuple si
idget.connect(sig_name, func, func_data)
</code>
<note>
La méthode ''GObject.connect'' retourne un iden... ésactiver temporairement le contrôleur définit.
</note>
Où func est la fonction de rappel de la forme:
... e python>
def func(self, widget, data)
</code>
<note>
La signature de la fonction de rappel donnée ici... pourra être différente selon le widget utilisé.
</note>
Les étapes générales d'utilisation de pygtk se
iveau d'indentation est de 4 caractères espace.
<note>
Cet usage syntaxique de l' indentation peut para... e insensibles aux espaces et à la présentation.
</note>
===== Conventions d'usage =====
Non obligatoir
f, value=None):
self.name = value
</code>
<note>
* La définition commence via le mot clé **clas... méthode nommé **__init__** est le constructeur.
</note>
===== Instanciation =====
<code python>
# Ins
=
<code bash>
pip3 install mysqlclient
</code>
<note>
Le module MySQLdb est construit au dessus de l'A... née, les paquetages pourront être désinstallés.
</note>
<code python>
import MySQLdb
db = MySQLdb.conne
aire à la gestion de cet environnement virtuel.
<note>
Notons que le script ou le programme Python qui ... simplement être activé avant appel du script.
</note>
Parmi les options disponibles à la création de