Infoforall

Créer avec Python

Voici le menu général de la partie Python puis les 3 liens vers les tutoriels permettant d'installer et d'utiliser l'interpréteur :

python

Récapitulatif des notions par activité

Activité Description
Vous trouverez ici la liste des différentes notions abordées ou réabordées dans l'activité. Il ne s'agit pas de faire un bilan ou un résumé. Pour cela, allez voir la partie Fiche du site qui regroupe les résumés des différentes activités.
01 - Afficher dans la console

Opérateurs +-*/ et % et // et **

Fonction native print


Les INTEGERS et les FLOATS

Les STRING :

Eléments délimitateurs : guillemets

Caractères particuliers : \" \t \n

Concaténation de string


Déroulement séquentiel du programme

Commentaires avec #

Introduction à l'encodage et les deux premières lignes d'un programme Python

Variable, premier contat : simple boîte de stockage ?

Affectation d'une variable avec le signe =


Boucle FOR numérique (introduction rapide)

02 - Lire entrée clavier

Fonction native input renvoyant toujours un string

Fonction native type

Fonctions natives int, float et str


Importation de module

Module os

Les différents types de variables

Permutation

Affectation multiple


IF, ELIF, ELSE

Booléen True et False

Test d'égalité avec ==

WHILE (introduction rapide)


Module random

Fonction du module : randint


break et continue en FAQ

03- Les images

Notion de pixel

Intensité codée en 1 octet (8 bits) (0-255)

Couleur codée en 3 couches RGB (3 octets)

Couleur codée en 4 coucehs RGBA (4 octets)

Taille théorique d'un fichier

BMP - GIF - JPEG - PNG

Importation de Pillow

04 - Modification d'images

Convertir de la la base 2 vers la base 10

Module Pillow ou PIL


1er contact avec les OBJETS

Notion de variable-référence (objet) vs variable-structure

Notion de méthodes

Notion d'attibuts et propriétés


Les TUPLES

Classe Image

Méthodes constructeurs des objets Image : new, open

Méthodes des objets Image : resize, getbands, split, merge, save, getpixel, setpixel, show, paste

Propriétés des objets Image : width, height, size, format

Format 'RGB', 'L' et 'RBGA'

05 - Complément sur les images
06 - Interface graphique

Module tkinter

Classe Tk

Méthodes objets Tk : mainloop, geometry


Classe Label

Classe Button

Classe Entry

Méthodes des widgets : cget, config

Méthodes de placements des widgets : pack, place

Attributs des widgets : text, fg, bg, font, textvariable, image


VARIABLES : explication de la raison du stockage de l'adresse pour expliquer les objets


Classe StringVar et Classe IntVar pour modifier automatiquement l'affichage des widgets qui en dépendent

Méthodes des objets StringVar : get, set

Attribut textvariable des Widgets à utiliser pour donner la référence d'un StringVar


Fonctions (rattachées à un Button) via l'attribut command

Fichier .py vs fichier .pyw


Module ImageTk

Classe PhotoImage


Notion de ramasse-miettes

07 - Compléments Tkinter

Classe Scale

Méthodes : get, set

Attributs : orient, label, variable


Classe Spinbox


Classe Listbox

Méthodes : insert, get, set


Module filedialog de tkinter

Fonction askopenfilename


Problème lié au ramasse-miettes


Attributs des widgets contenant du texte : height, width, anchor, wraplength

08 - Test logique & Boucle for

IF ELIF ELSE

Tests logiques AND, OR, NOT


FOR numérique

in range

FAQ : break pour sortir avant la fin

FAQ : continue pour éviter de finir l'une des itérations


Fonction native chr : transforme un nombre en caractère en suivant l'ASCII puis l'UNICODE

Fonction native len : renvoie le nombre d'éléments dans une struture itérable


STRING : itérable, séquentiel, non mutable

Eléments délimitateurs : guillemets

Lecture d'un caractère d'un string à l'aide des crochets

09 - WHILE et FOR nominatif

WHILE

TRY EXCEPT

FOR nominatif sur les strings ou les listes

FOR numérique + len pour lire les éléments des strings et des listes


STRING : itérable, séquentiel et non mutable

Eléments délimitateurs : guillemets

Méthodes des strings : isnumeric, split, replace

Concaténation

Test d'appartenance avec caractere in "aeyuio"


LISTE : itérable, séquentiel et mutable

Eléments délimitateurs : crochets

Lecture d'un élément à l'aide des crochets

Méthode : append


Fonction native len pour lire le nombre d'éléments dans un string ou une liste


10 - Gestion des STRINGs

STRING : itérable, séquentiel et non mutable

Eléments délimitateurs : guillemets

Lecture d'un string à l'aide d'une boucle FOR nominative

Lecture d'un string à l'aide d'une boucle FOR numérique

Etude de la "modification" des strings : ils sont non mutables

Test d'appartenance avec laPetitString in leGrandString

Méthodes des strings : isnumeric, lower, upper, split, replace, isalpha et en FAQ format


Concaténation

Encodage ASCII sur 7 bits : 128 possibilités de 0 à 127

Encodage UNICODE correspond à celui de ASCII (de 0 à 127)

Fonction native

ord qui permet de connaitre le code UNICODE d'un caractére

id


11 - Les fonctions : les bases

Procédures

Déclaration des fonctions

Arguments : données transmises aux fonctions

Paramètres : variables de réception des arguments transmis aux fonctions

Retour d'informations avec return

Différence entre fonction et méthode


module turtle

module time

module math


Importation des modules

Différence entre import ?? et from ?? import ??


Introduction très rapide aux gestionnaires d'événement

Méthode des widgets : bind

Variable event

12 - Les fonctions : portée des variables

Espace des noms

Notion de variables contenant en réalité l'adresse vers un contenu et pas le contenu lui-même.


On regarde d'abord dans l'espace des noms de l'endroit où l'instruction se trouve

En Python :

On peut lire une variable du "programme" depuis une fonction.

On ne pas peut modifier une variable du "programme" depuis une fonction, sauf si on utilise global.

On ne pas lire une variable d'une fonction ailleurs que dans la fonction elle-même.


Le garbage collector de Python :

Le garbage collector détruit en sortie de fonction les données internes si elles sont non référencées hors de la fonction.

Les widgets ne sont pas détruits car tkinter stocke les données des widgets dans la fenêtre qui les accueille.

On peut sauver les données d'une variable en les enregistrant via un attribut dans un objet (exemple des images qu'on stocke dans leur widget avec une commande du type monWidget.maMemoire = imageASauver.


LISTE : itérable, séquentiel et mutable

Lecture d'un élément à l'aide des crochets

Méthodes : append, remove, sort, count, insert


Module ImageTk

Fonction shuffle qui permet de mélanger les éléments d'une liste : shuffle.uneListe