Transverse

Ressources transverses #

Principe Lsb
Principe de la stéganographie LSB # La méthode de stéganographie dite LSB (Least Significant Bit) consiste à utiliser les bits les moins significatifs d’un fichiers pour en représenter un autre. Ce système se prête tout particulièrement aux images. Dans une image numérique ordinaire, chaque pixel est représenté par ses composantes Rouge/Vert/Bleu et chaque composante est codée sur un octet (une valeur entre 0 et 255). Ainsi, on obtient un image en 16,7 millions de couleurs (256³)
Tuto Apiweb
Python et les API Web # Bon nombre de services Web proposent des API (Application Programming Interface) basées sur HTTP. C’est ce qui permet entres autres à des tiers de développer des clients pour ces services Webs (clients Twitter par exemple). Ces APIS Web peuvent suivre l’un ou l’autre des modèles les plus communs : REST. En règle générale, les APIs sont documentées : https://developers.google.com/youtube/2.0/developers_guide_json http://developer.vimeo.com/apis/ https://dev.twitter.com/docs/api/1.1/overview http://www.reddit.com/dev/api http://wiki.openstreetmap.org/wiki/API_v0.6 https://code.
Tuto Bottle
Serveur Web en Python avec bottle # Il existe de nombreux framework Web pour Python : Django, Cherrypy, Pyramid, Flask, Bottle… Nous allons nous concentrer ici sur Bottle en raison de sa facilité d’utilisation et d’installation. Site officiel de bottle : http://bottlepy.org/docs/dev/index.html La version de bottle utilisée lors de la rédaction de ce document est la 0.12. l’installation se résume à récupérer le fichier bottle.py et à le déposer dans le PATH de Python (le mieux est de passer par le système d’installation standard de votre machine).
Tuto Images
Travailler avec des images en Python # Usages depuis 2017… # Cette section a été mise à jour en fonction des méthodes actuellement utilisées pour manipuler et afficher des images. Ici l’objectif sera toujours de transformer une image en tableau numpy, pour pouvoir ensuite la manipuler. Lecture de l’image # PIL permet de lire une image enregistrée localement dans de nombreux formats (il n’est pas forcément disponible sur vos machines).
Utilisation Ctypes
Utilisation de Ctypes # ctypes est un module Python, de la bibliothèque standard, qui permet, depuis un programme Python, d’appeler des fonctions et procédures présentes dans une bibliothèques compilées, généralement écrire en C (.dll sous Windows et .so sous Linux). Documentation de ctypes : https://docs.python.org/3.4/library/ctypes.html Cette documentation est succincte mais elle présente quelques exemples d’utilisation très simples. Vous avez aussi une vidéo explicative (un peu ancienne) : Écriture des fonctions en C # L’objectif de ctypes étant en particulier de pouvoir utiliser des bibliothèques déjà compilées, il n’y a rien de particulier à faire pour écrire les fonctions C.
Automates cellulaires 2D - généralités
Automates cellulaires 2D : généralités # Ce document est le plus grand dénominateur commun entre les différents travaux pratiques concernant les automates cellulaires en dimension 2. Vous devez avoir compris ce document avant de consulter les spécificités de tel ou tel automate : Jeu de la vie Simulation de feux de forêt Propagation d’une épidémie Vous pouvez aussi consulter la documentation sur les automates cellulaires 1D. Cette page doit cependant être suffisante pour comprendre de quoi il retourne.
Comprendre les messages d'erreur de Python
Comprendre les messages d’erreur de Python # Ce document regroupe des cas d’erreurs courantes, ainsi que les solutions à mettre en œuvre pour les régler. Les messages d’erreur donnés ici sont ceux obtenus avec Python 3.11. Les messages d’erreur ont été particulièrement améliorés en Python 3.10 et Python 3.11, vous n’aurez donc peut être pas exactement les mêmes. SyntaxError # Il s’agit souvent d’un délimiteur manquant, d’un symbole inapproprié… Ces erreurs sont détectées à la lecture du code source (avant qu’il ne soit réellement exécuté).
Dessin avec Python Tkinter et PySide
Dessin avec Python Tkinter et PySide # Cette page présente le même programme, qui affiche une fenêtre contenant deux rectangles, une image et un segment, en utilisant tkinter ou PySide. Voici ce qu’affichent les programmes : Cet avis n’engage que moi : PySide (Qt) est plus moderne que Tk, il contient des Widgets plus complexes et plus complets. Cependant, il est moins standard en Python que tkinter, et il est plus complexe (pour faire des choses simples, c’est a priori aussi simple, mais si on entre dans les détails…).
Documentation TP Arduino
Documentation TP Arduino # Ce document contient des références vers quelques composant ou modules. TMP36 # Le TMP36 est un capteur de température analogique. Il est très utilisé, et largement documenté : Datasheet doc adafruit docinstructable Led RGB # La LED RGB que vous avez à disposition est une LED RGB à anode commune. L’anode est la plus longue des quatre «pattes» du composant. doc adafruit Afficheur LCD # doc adafruit doc instructables L’afficheur fonctionne avec ou sans rétroéclairage.
Graphismes (et interaction) en Python avec Pygame
Graphismes (et interaction) en Python avec Pygame # \(\) Ce module n’est plus utilisé. Voir les mises à jour ici : Travailler avec des images en Python. Comme en C, il existe de multiples manières de créer et manipuler des images en Python. Nous allons ici traiter du module pygame, une interface à la bibliothèque SDL, très complet Vous aurez besoin de télécharger un module complémentaire, à placer dans le même répertoire que votre fichier :
Interfaces graphiques avec Python et Qt (PySide)
Interfaces graphiques avec Python et Qt (PySide) # Cette page a été écrite aux environs de 2013 et elle n’est pas maintenue. Certaines informations sont donc peut être maintenant incorrectes. Introduction # Ce document traite de la réalisation d’applications graphiques (avec fenêtres, boutons etc..) en Python. La création d’applications graphiques nécessite le choix d’un toolkit particulier. Les contraintes étant la portabilité de l’application, la disponibilité du toolkit sur python 3, la maturité et la simplicité d’utilisation, c’est le toolkit Qt qui a été retenu.
Le module Turtle de Python
Le module Turtle de Python # Une tortue est disponible en standard sous Python. Elle n’est pas très rapide, même pour une tortue, mais permet de réaliser des figures intéressantes. Voici comment utiliser le module turtle de Python, en mode interactif. La documentation complète est ici : turtle.html import turtle as tu tu.fd(50) tu.rt(90) tu.fd(50) tu.reset() tu.speed(0) for i in range(6) : tu.fd(100) tu.rt(360 / 6) Liste (non exhaustive) des fonctions du module Turtle # Fonction Effet fd(n) avance de n bk(n) recule de n rt(n) tourne à droite de n degrés lt(n) tourne à gauche de n degrés clear() efface l’écran penup() lève le stylo pendown() baisse le stylo reset() efface l’écran, remet la tortue au centre et réinitialise ses paramètres showturtle() montre la tortue hideturtle() cache la tortue speed(n) Change la vitesse de 1(lent) à 10 (rapide).
Programmation orientée objets avec Python (1)
Programmation orientée objets avec Python # Cette section n’est qu’un ébauche, permettant de se familiariser avec quelques concepts simples de POO Contrairement à ce que le titre de ce document laisse entendre, l’objet de ce document n’est pas de traiter les différents aspects de la POO, mais plutôt de détailler les différentes notations (et qques concepts) de POO qui sont utiles dans le cadre de l’utilisation du binding PySide (utilisé pour réaliser des interfaces graphiques).
Python et la 3D avec vispy
Python et la 3D avec vispy # Tutoriel réalisé avec la version 0.6 de vispy vispy est un module Python en cours de développement qui apporte les fonctionnalités avancées des dernières versions d’OpenGL ainsi qu’une API de plus haut niveau pour la visualisation scientifique. Nous allons nous concentrer ici sur les fonctionnalité de plus haut niveau et laisser de côté ce qui fait la puissance et la difficulté d’OpenGL (shaders etc…).
Structure de données avancées et algorithmes
Structure de données avancées et algorithmes # Ce document traite des structures de données classiques en algorithmique : listes, files, piles, arbres et de leur utilisation avec le langage Python. Le parti pris est ici de décrire les structures de données à partir des opérations qui permettent de les manipuler. Listes # Propriétés des listes # Une liste est une séquence d’objets ordonnés. Les opérations sont les suivantes :
Tkinter
Interfaces graphiques avec Python et Tkinter # Introduction # Ce document traite de la réalisation d’applications graphiques (avec fenêtres, boutons etc..) en Python. La création d’applications graphiques nécessite le choix d’un toolkit particulier. Le toolkit utilisé est tkinter. Il a l’avantage d’être généralement distribué avec Python. L’objectif de ce document est de guider le lecteur pas à pas dans la réalisation de programmes comportant une interface graphique. Test de l’installation # Le programme suivant ouvre une fenêtre contenant le texte Hello World.
Vous devez les avoir lu
Vous devez les avoir lus # Python est enseigné dans de nombreux pays. En France, il est est enseigné à l’Université et au lycée (maths, SNT, NSI…). Les ressources sont donc très nombreuses. J’ai regroupé ici des documents qui valent selon moi le détour. Débutants # Guide de survie de Python Erreurs récurrentes en Python Références # Mémento Python Abrégé dense Python Cours complets # Cours Python 3