Outils pour utilisateurs

Outils du site


prog:python:python

Programmation en Python

Environnements de programmation

IDE PyCharm
IDE Spyder
Distribution Anaconda incluant Spyder
Environnement pédagogique Thonny
Environnement pédagogique EduPython

Editeurs de texte

Sublime Text
Notepad++
Visual Studio

Apprendre à programmer en Python

Aide-mémoire perso JBP

Aides-mémoire et supports

On trouve des tonnes de tutos et de documents sur Python, ceux qui suivent sont des aide-mémoire très concis.

Mémento Python 3 de Laurent Pointal, voir aussi son site
Aide mémoire Python de Marc-Antoine Weisser
Aide mémoire de l'Université de Poitiers, ou bien document pdf
Aide mémoire de Émilien Joly et autres documents utiles sur son site (shell, matlab…)

Learn X in Y minutes, where X=Python3

Manuel Edu Python

Quelques bibliothèques utiles

NumPy pour manipuler des tableaux (mini tuto)

SciPy, basée sur NumPy, pour le calcul scientifique

matplotlib pour les représentations graphiques de données et résultats

bokeh pour des représentations graphiques interactives utilisables en ligne

pandas pour l'analyse de données (structures de données et algorithmes) et geopandas pour des données géolocalisées

Pillow issue de PIL, pour le traitement et la manipulation de fichiers image (mini tutoriel)

Opencv pour le traitement d'images et la vision par ordinateur

scikit-image aka Skimage également pour le traitement d'images

Turtle pour l'initiation à la programmation (tracé de graphiques simples avec la tortue) : aide mémoire

Cartopy et GeoPandas pour la cartographie ainsi que ipyleaflet (extension de Jupyter notebooks)

Kivy pour réaliser des interfaces-utilisateur graphiques (GUI multi plateforme)

Theano pour le deep learning

pweave pour générer des rapports scientifiques

Python + arduino + OSC : Tuto

Mises à jour avec Anaconda

conda update -n root conda
conda update --all
conda update anaconda-navigator

<html> <!–

Utiliser la bibliothèque Turtle avec Jupyter Notebooks

Plusieurs modules à installer !

pip install ipyturtle
jupyter nbextension enable --py --sys-prefix ipyturtle

Puis installer Node.js (qui comprend NPM) et :

git clone https://github.com/gkvoelkl/ipython-turtle-widget.git
cd ipython-turtle-widget
pip install -e .
jupyter nbextension install --py --symlink --sys-prefix ipyturtle
jupyter nbextension enable --py --sys-prefix ipyturtle

–!> </html>

Quelques programmes

Initiation au Traitement d'images

Variations autour du palindrome

Travail avec des fichiers

Expérimentations avec OSC

Expérimentation avec Arduino

Mini tuto NumPy

Bons usages

Ce n'est pas exigé par le compilateur, mais de bons usages de présentation permettent de faciliter la (re)lecture d'un programme. Un ensemble de règles d'usage est défini dans le guide du style PEP8. On peut généralement paramétrer son éditeur de texte pour qu'il vérifie et signale les “erreurs” de style.

Quelques éléments pour résumer :

  • Les opérateurs doivent être entourés d'espaces
    • Exception pour exprimer la priorité des opérateur
      • Ex. : c = (a+b) * (a-b)
    • Exception pour le passage de paramètres
      • Ex. def fonction(arg='valeur'):
  • Pas d'espaces à l'intérieur des parenthèses, crochets et accolades
  • Espace après : et , mais pas avant
  • Longueur des lignes limitée à 79 caractères, si nécessaire passer à la ligne et indenter
  • Imports de module : 1 par ligne et sauter 2 lignes avant la suite du code
  • Indentation : 4 espaces, pas de tabulation
  • Encodage UTF8
  • Docstrings entourés de triples quotes
  • Noms de variables
    • Une seule lettre pour les boucles et les indices
    • Minuscules et underscores pour les variables, fonctions et méthodes
    • Majuscules et underscores pour les constantes
    • CamelCase pour les noms de classes

Essais de Jupyter Notebooks

Il faut préalablement créer un compte sur github de façon à héberger le code qui va être réalisé. Pour les petits programmes, un gist est préférable.
Installer localement la commande nbinteract qui va fabriquer le fichier html dynamique à partir du notebook.
pip install nbinteract

  • Créer un notebook et enregistrer le fichier ipynb
  • Charger ce notebook sous forme de gist dans github
  • Dans le dossier où est le fichier : nbinteract nom_notebook.ipynb -s user_github/id_gist
  • Modifier le fichier html nouvellement créé (remplacer gh par gist en toute fin du fichier)
  • Le fichier html est désormais opérationnel
  • ATTENTION ! si ce fichier est hébergé sur un serveur en http, il sera impossible de l'afficher dans ce wiki (https). La preuve :

<html> <!– <iframe src=“http://labotim.fr/notebooks/factorielle_recursive.html”></iframe> –> </html>

Références :

https://www.codedisciples.in/embedding-jupyter.html
https://elc.github.io/posts/embed-interactive-notebooks/
https://www.nbinteract.com/tutorial/tutorial_intro.html

prog/python/python.txt · Dernière modification : 2021/09/21 10:25 de jbpuel