0% ont trouvé ce document utile (0 vote)
28 vues180 pages

Cours Python NV

Le document présente Python comme un langage de programmation de haut niveau, soulignant sa lisibilité, sa simplicité et sa polyvalence dans divers domaines d'application tels que le développement web, la science des données et l'éducation. Il aborde également les caractéristiques de Python, l'installation des outils nécessaires, ainsi que des concepts fondamentaux comme les variables, les types de données, les structures de contrôle et la programmation orientée objet. Enfin, il traite des commandes système et de la gestion des fichiers en Python.

Transféré par

zouir aya
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
28 vues180 pages

Cours Python NV

Le document présente Python comme un langage de programmation de haut niveau, soulignant sa lisibilité, sa simplicité et sa polyvalence dans divers domaines d'application tels que le développement web, la science des données et l'éducation. Il aborde également les caractéristiques de Python, l'installation des outils nécessaires, ainsi que des concepts fondamentaux comme les variables, les types de données, les structures de contrôle et la programmation orientée objet. Enfin, il traite des commandes système et de la gestion des fichiers en Python.

Transféré par

zouir aya
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Pr.

EL AFOU Youssef

Année universitaire 2022/2023


INTRODUCTION
Python est un langage de programmation de haut niveau interprété pour la
programmation à usage général. Créé par Guido van Rossum, et publié
pour la première fois en 1991. Python repose sur une philosophie de
conception qui met l’accent sur la lisibilité du code, notamment en utilisant
des espaces significatifs. Il fournit des constructions permettant une
programmation claire à petite et grande échelle.

Python propose un système de typage dynamique et une gestion automatique


de la mé- moire. Il prend en charge plusieurs paradigmes de programmation,
notamment orienté objet, impératif, fonctionnel et procédural, et dispose
d’une bibliothèque standard étendue et complète.

Python est un langage de programmation open-source et de haut niveau,


développé pour une utilisation avec une large gamme de systèmes
d’exploitation. Il est qualifié de langage de programmation le plus puissant
en raison de sa nature dynamique et diversifiée. Python est facile à utiliser
avec une syntaxe super simple très encouragente pour les apprenants
débutants, et très motivante pour les utilisateurs chevronés.
INTRODUCTION
Domaines d’application

 Administration système
 Applications Web
 Extension ou scriptage de C++/C(cPython)/
Java(JyThon)/ Net(IronPython)
 Interfaces graphiques: usage interactif
 Remplacement environnements calcul (Matlab,
IDL, …)
INTRODUCTION
Quelles sont les principales raisons qui poussent à
apprendre Python ?

I. Utilisé par des sites web pionniers


II. Richesse en outils Python est orienté objet
III.Simplicité et lisibilité du code
IV.Python est open source donc gratuit
V. Python est multiplateforme
VI.Python est très puissant en terme de production
INTRODUCTION
Quelles sont les principales raisons qui poussent à
apprendre Python ?

 Développement Web, en utilisant les frameworks Django, Flask,


Pylons
 Science des données et visualisation à l’aide de Numpy, Pandas et
Matplotlib
 Applications de bureau avec Tkinter, PyQt, Gtk, wxWidgets et
bien d’autres..
 Applications mobiles utilisant Kivy ou BeeWare
 Education : Python est un excellent langage pour apprendre
l’algorithmique et la programmation. Par conséquent largement
utilisé aux instituts supérieurs...
INTRODUCTION
Instalation des outils Python ?

Afin de pouvoir développer en langage Python, vous devez


installer les outils nécessaires :

 Télécharger et installer le langage Python depuis le Site officiel


Python

 Télécharger et installer un IDE Python : de nombreux choix s’offer


à vous: Pycharm, PyScripter, Wing…. Quant à moi je vous
recommande Visual Studio code, en raison de rapidité et de sa
simplicité d’usage, en plus il est gratuit.
INTRODUCTION
Caractéristiques language Python
INTRODUCTION
Quelques remarques utiles
INTRODUCTION
Quelques remarques utiles
Script et language python
Portées des variables
Script et language python
Modules et packages
Script et language python
Importer
Script et language python
Importer
Script et language python
Importer
Script et language python
Modules utiles de la cheese Shop
Variables et commentaires en Python
Commentaires
Les commentaires sur une seule ligne
s’introduisent en insérrant le symbol
# avant le texte.
Les commentaires sur plusieurs lignes
s’introduisent au sein des triples
quotes : """....""“
Exemple:
# Voici un commentaire sur une seule l igne
””” Voici un commentaire sur plusieurs………………….
lignes . . . .”””
Variables et commentaires en Python
Variables
Contrairement à d’autres langages de programmation,
Python n’a pas de commande pour déclarer une variable.
Une variable est créée au moment où vous lui affectez
une valeur.
Une variable python possède toujours un type, même s’il
est non déclarée. le type se définie au moment de
l’introduction de la variable et peut être changé par la
suite, ce qui justifie le dynamisme et la puissance du
language Python.
Exemples: x=8 x = 3 # x est de type entier
y = ” Non prénom ” x = ” Hello ” ’’’x est maintenant
print (x) transformé en type string”’
print (y)
Types de données standards
Types de variables
Types de données standards
Types de variables et opérations numériques
Types de données standards
Opérations numériques
Types de données standards
Opérations numériques
Types de données standards
Les modules math, numpy et matplotlib
Types de données standards
Opérations de comparaison
Types de données standards
Séquences
Types de données standards
Opérations sur les séquences
Types de données standards
Chaînes de caractères
Types de données standards
Manipulation sur les chaînes de caractères
Types de données standards
Gestion des espaces
Types de données standards
Gestion des majuscules et miniscules
Types de données standards
Tests sur la nature des chaînes de caractères
Types de données standards
Recherche et remplacement
Types de données standards
Découpage et collage
Types de données standards
Formatage des chaînes
Types de données standards
Formatage
Types de données standards
Formatage
Types de données standards
N-uplets (tuples), listes
Types de données standards
Opérations sur les listes
Types de données standards
Méthodes des listes
Types de données standards
Opérateur de copier
Types de données standards
Dictionnaires
Types de données standards
Méthodes des dictionnaires
Types de données standards
Méthodes des dictionnaires
Types de données standards
Substitution des données
Types de données standards
Opérateur de copier
Types de données standards
Ensembles
Types de données standards
Méthodes des ensembles
Types de données standards
Méthodes des ensembles
Structures de contrôle
Structures de contrôle
Structures de contrôle
Structures de contrôle (if, elif et else)
La structure sélective if ...else, permet d’exécuter un ensemble
d’instructions lorsqu’une condition est réalisée.

Syntaxe :

i f ( condition ) :
instructions . . .
else :
4 autres instructions . . .
Structures de contrôle
Structures de contrôle (if, elif et else)
Structures de contrôle
Structures de contrôle (Boucles)
Structures de contrôle
Remarques sur Boucle For
Structures de contrôle
Compréhension de liste
Fonctions
Réalisation d’une fonction
Le langage Python possède déjà des fonctions prédefinies comme
print() pour afficher du texte ou une variable, input() pour lire une
saisie clavier... Mais il offre à l’utilisateur la possibilité de créer ses
propres fonctions :
Fonctions
Réalisation d’une fonction
Exceptions
Gestion des exceptions
Exceptions
Gestion des exceptions
Exceptions
Gestion des exceptions
Exceptions
Gestion des exceptions
Entrées - Sorties
print et input
Programmation Orientée Objet (POO)

Concept de POO en Python:


 La programmation oriété objet est un type de programmation basée sur la
création des classes et des objets via une méthode appelée instanciation.

 Une classe est un prototype (modèle) codé en un langage de programmation dont


le but de créer des objets dotés d’un ensemble de méthodes et attributs qui
caractérisent n’importe quel objet de la classe. Les attributs sont des types de
données (variables de classe et variables d’instance) et des méthodes, accessibles
via la concaténation par points.

 En programmation orientée objet, la déclaration d’une classe regroupe des


méthodes et propriétés (attributs) communs à un en- semble d’objets. Ainsi on
pourrait dire qu’une classe représente une catégorie d’objets. Elle apparaît aussi
comme une usine permettant de créer des objets ayant un ensemble d’atributs et
méthodes communes.
Programmation Orientée Objet (POO)

Classes en Python:
Pour créer une classe en Python, on utilise l’instruction :
1 class nom_de_la_classe

On crée ensuite une méthode qui permet de construire les objets, appelé constructeur
vial’instruction :
1 def __init__ ( s e l f ) :

Exemple. classe Personne


1 class Personne :
2 def __init__ ( self ,nom, age) :
3 s e l f .nom = nom
4 s e l f . age = age
5 P = Personne( ” Albert ” ,27)
6 print ( ” Le nom de la personne est : ” , P.nom)
7 print ( ” L’ age de la personne est : ” , P. age, ” ans” )
8 # affiche : Le nom de la personne est : Albert
9 # L ’ age de la personne est : 27 ans
Lecture / Ecriture Fichier
Lecture de fichier
Classes
Classes en python
Classes
La méthode __init__
Classes
Exemple d’une classe
Classes
Instanciation d’une classe
Classes
Rôle de self
Classes
Héritage
Classes
Polymorphisme
Classes
Polymorphisme
Commandes systèmes
Fichiers en Python
Module os:
Le module os permet de gérer l’arboressence des fichiers, il
peut être chargé avec la commande: import os

Méthode os.getlogin()
os.getlogin() : renvoie le nom d’utilisateur courant.

Exemple. Programme Python qui renvoie le nom


d’utilisateur:
Commandes systèmes
Fichiers en Python
Méthode os. mkdir ()

os. mkdir(chemin): crée un répértoire


correspondant au chemin spécifié.

Exemple. création d’un dossier à la racine du


disque C :\
1 import os
2 os . mkdir( ” c :/myFolder” ) # crée un dossier
nommé myFolder sur le disque C :\
Commandes systèmes
Fichiers en Python
méthode os.getcwd()

os.getcwd() : renvoie le répertoire actuel sous


forme de chaine de caractères.

1 import os
2 rep_actuel = os . getcwd()
3 print ( rep_actuel ) # renvoie le répertoire
actuel
Commandes systèmes
Fichiers en Python
Méthode os.path:
Afin de pouvoir utiliser la méthode os.path, il faut préalablement
importer le module pathlib. Le module pathlib est un module doté
d’une interface orientée objet inclus dans python depuis la version
3.4 doté de méthodes très intuitives permettant d’interagir avec le
système de fichiers d’une façon simple et conviviale.
Tester si un répertoire existe avec la méthode
os.path.exist():
La méthode os.path.exist () permet de tester si un répertoire
existe ou non.
Exemple. Tester l’existence d’un répertoire
1 import os
2 from pathlib import Path
3 print ( os . path . exists ( ” c :/users/ ” ) )
4 #affiche True
6 # On peut aussi u t i l i s e r
7 print (not os . path . exists ( ” c :/users/ ” ) )
8 #affiche False
Commandes systèmes
Fichiers en Python
Méthode os.path:
Afin de pouvoir utiliser la méthode os.path, il faut préalablement
importer le module pathlib. Le module pathlib est un module doté
d’une interface orientée objet inclus dans python depuis la version
3.4 doté de méthodes très intuitives permettant d’interagir avec le
système de fichiers d’une façon simple et conviviale.
Tester si un répertoire existe avec la méthode
os.path.exist():
La méthode os.path.exist () permet de tester si un répertoire
existe ou non.
Exemple. Tester l’existence d’un répertoire
1 import os
2 from pathlib import Path
3 print ( os . path . exists ( ” c :/users/ ” ) )
4 #affiche True
6 # On peut aussi u t i l i s e r
7 print (not os . path . exists ( ” c :/users/ ” ) )
8 #affiche False
Commandes systèmes
Fichiers en Python
Tester si un chemin est un répertoire ou un fichier avec les
méthodes is_dir() et is_file()
Pour tester la nature d’un chemin s’il s’agit d’un répertoire ou un
fichier on utilise les méthodes is_dir() et is_file()
1 import os
2 from pathlib import Path
3 myDirectory = ”C :/Users”
4 p = Path( myDirectory)
5 print (p. is_dir () ) # affiche True
6 print (p. i s _ f i l e () ) # affiche False

1 import os
2 from pathlib import Path
3 myDirectory = ”C :/Windows/system. i n i ”
4 p = Path( myDirectory)
5 print (p. is_dir () ) # affiche False
6 print (p. i s _ f i l e () ) # affiche True
Commandes systèmes
Fichiers en Python
Détrmination du chemin absolu à l’aide de la méthode absolute()
La méthode absolute() renvoie le chemin absolu du fichier qui
contient le code python. Nous allons faire un petit test en créant un
fichier python qui contient le code ci dessous t l’enregistrer sur le
bureau :

1 import os
2 from pathlib import Path
3 myDirectory = ” . ”
4 p = Path( myDirectory)
5 print (p. absolute () )
6 # Affiche : ”C :\Users\ acer\Desktop”
Commandes systèmes
Fichiers en Python
Transformer un chemin en adresse uri avec la méthode as_uri()

La méthode as_uri() est utilisée pour transformer un chemin en uri


(uniforme ressource identifier)

1 from pathlib import Path


2 myDirectory = ”C:/Users/Public/Videos/Sample Videos/Wildlife .wmv”
3 p = Path( myDirectory)
4 print (p. as_uri () )
5 #Affiche:file:///C:/Users/Public/Videos/Sample%20Videos/Wildlife.wmv
Commandes systèmes
Fichiers en Python
Obtenir le chemin du dossier parent avec la méthode parent

La méthode parent permet de renvoyer le dossier parent d’un dossier


existant :
1 from pathlib import Path
2 from pathlib import Path
3 myDirectory = ”C :/Users/ Public / ”
4 = Path( myDirectory)
5 print (p. parent) # Affiche ’C :\Users ’
6 # parent renvoie aussi le dossier parent d ’ un f i c h i e r
7 myDirectory = ”C :/Users/ Public / Videos/Sample Videos/ W i l
d l i f e .wmv”
8 p = Path( myDirectory)
9 print (p. parent) # Affiche ’C :\Users\ Public \ Videos\Sample
Videos ’
Commandes systèmes
Fichiers en Python
Récuperation du contenu d’un dossier avec la méthode scandir()
appliquée à la méthode Path()

En appliquant la méthode scandir() à la méthode Path(), on peut


obtenir le contenu d’un dossier :

Exemple. récupération du contenu du répertoire ’C :/Users’


1 from pathlib import Path
2 import os
3 myDirectory=” c :/users”
4 p = Path( myDirectory)
5 for x in os . scandir (p) :
6 print (x)
Commandes systèmes
Fichiers en Python
Récuperation du contenu d’un dossier avec la méthode scandir()
appliquée à la méthode Path()

En appliquant la méthode scandir() à la méthode Path(), on peut


obtenir le contenu d’un dossier :

Exemple. récupération du contenu du répertoire ’C :/Users’

1 from pathlib import Path Ce qui affiche à l’exécution :


2 import os <DirEntry ’acer’>
3 myDirectory=” c :/users” <DirEntry ’All Users’>
4 p = Path( myDirectory) <DirEntry ’Default’>
5 for x in os . scandir (p) : <DirEntry ’Default User’>
6 print (x) <DirEntry ’desktop.ini’>
<DirEntry ’Public’>
Commandes systèmes
Fichiers en Python
Récuperation du contenu d’un dossier avec la méthode scandir()
appliquée à la méthode Path()

En appliquant la méthode scandir() à la méthode Path(), on peut


obtenir le contenu d’un dossier :

Exemple. récupération du contenu du répertoire ’C :/Users’

1 from pathlib import Path Ce qui affiche à l’exécution :


2 import os <DirEntry ’acer’>
3 myDirectory=” c :/users” <DirEntry ’All Users’>
4 p = Path( myDirectory) <DirEntry ’Default’>
5 for x in os . scandir (p) : <DirEntry ’Default User’>
6 print (x) <DirEntry ’desktop.ini’>
<DirEntry ’Public’>
Commandes systèmes
Fichiers en Python
Afficher tous les fichiers d’une extension spécifique via la méthode glob()

La méthode glob() est l’une des méthodes de l’objet Path


permettant d’afficher la liste des fichiers d’une extension donnée :

Exemple. affichage des bibliothèques .dll du répertoire’ C :/Windows’

1 from pathlib import Path


2 p = Path(’C:/Windows/’)

3 for f in list(p.glob(’**/*.dll’)):

4 print(f)
Commandes systèmes
Fichiers en Python
Mode d’ouverture d’un fichier:
La méthode open(), permet de créer un objet-fichier doté de certaines propriétés
permet- tant de lire et écrire dans un fichier. Sa syntaxe est:

1 f = open([nom du fichier ] , [mode ouverture ])

Le [nom du fichier] est le nom du fichier qu’on souhaite ouvrir ou crée. Le mode
d’ouverture comprend les paramètres suivants:
— Le mode ’r’ : ouverture d’un fichier existant en lecture seule,
— Le mode ’w’ : ouverture en écriture seule, écrasé s’il existe déjà et crée
s’il n’existe pas,
— Le mode ’a’ : ouverture et écriture en fin du fichier avec conservation du
contenu existant
— Le mode ’+’ : ouverure en lecture et écriture
— Le mode ’b’ : ouverture en mode binaire
Ouverture et lecture d’un fichier
Pour lire un fichier existant, plusieurs méthode sont disponible:
Commandes systèmes
Fichiers en Python
Lecture totale avec la méthode read ()

La méthode read () permet de lire le contenu total ou partiel d’un fichier, après
être ouvert avec la méthode open ().

La syntaxe est: 1 fichier.read ()

Exemple. ouverture et lecture d’un fichier existant

1 f = open( ” myFile . txt ” , ’ r ’ )


2 contenu = f . read () # lecture du contenu
3 print ( contenu) # impression du contenu
4 f . close () # fermeture du fichier
Commandes systèmes
Fichiers en Python
Lecture totale avec la méthode read ():

La méthode read () permet de lire le contenu total ou partiel d’un fichier, après
être ouvert avec la méthode open ().

La syntaxe est: 1 fichier.read ()

Exemple. ouverture et lecture d’un fichier existant

1 f = open( ” myFile . txt ” , ’ r ’ )


2 contenu = f . read () # lecture du contenu
3 print ( contenu) # impression du contenu
4 f . close () # fermeture du fichier
Commandes systèmes
Fichiers en Python
Lecture partielle avec la méthode read ():
La méthode read () peut être également utilisée pour lire une partie
du fichier seulement en indiquant le nombre de caractère à lire entre
parenthèses :
Exemple. lecture partielle:
1 f = open( ” myFile . txt ” , ’ r ’ )
2 contenu = f . read(20) # lecture de 20 caractère du contenu
du f i c h i e r
3 print ( contenu) # impression du contenu
4 f . close () # fermeture du f i c h i e r

Remarque . Après execution de la fonction read(n) (n = nombre de


caractères à lire), le curseur se trouve à la position n+1, et donc si on
execute la fonction une 2ème fois, la lecture débutera depuis le
(n+1)ème caractère.
Commandes systèmes
Fichiers en Python
Lecture séquentielle caractère par caractère:

La méthode read pourra être utilisé aussi pour effectuer une lecture séquentielle caractère
par caractère en utilisant la boucle for:

1 for c in fichier.read()

Exemple. lecture séquentielle

1 f = open(”myFile.txt ”,’ r ’)
2 s=”.”
3 for c in fs.read():
4 s = s + c
5 print ( s)
Commandes systèmes
Fichiers en Python
Lecture séquentielle caractère par caractère:
La méthode read pourra être utilisé aussi pour effectuer une lecture séquentielle caractère
par caractère en utilisant la boucle for:

1 for c in fichier.read()

Exemple. lecture séquentielle

1 f = open( ” myFile . txt ” , ’ r ’ )


1 f = open(”myFile.txt ”,’ r ’) 2 s=” ”
2 s=”.” 3 while 1 :
3 for c in fs.read(): 4 c = fs . read(1)
4 s = s + c 5 if c ==” ” :
5 print ( s) 6 break
7 s = s + c
8 print ( s)
Commandes systèmes
Fichiers en Python
Lecture ligne par ligne avec les méthodes readline () et read- lines ()
Méthode readline ()

La méthode readline () permet de lire un fichier ligne par ligne. Cette


méthode pointe sur la première ligne lors de sa première exécution,
ensuite sur la deuxième ligne lors de seconde exécution et ainsi à la
nème exécution, elle pointe vers la nème ligne.

1 f = open( ” myFile . txt ” , ’ r ’ )


2 print ( ” l igne n°1 : ” , f.readline())
3 print ( ” l igne n°2 : ” , f.readline())
Commandes systèmes
Fichiers en Python
En combinant la méthode readline () avec la méthode
while (), on peut lire la totalité des ligne d’un fichier:

lecture de toutes les lignes avec readline()

1 f = open( ” myFile . txt ” , ’ r ’ )


2 s=” ”
3 while 1 :
4 ligne = f . readline ()
5 i f ( l igne == ” ” ) :
6 break
7 s = s + l igne
8 print ( s) # impression de la totalité des lignes
Commandes systèmes
Fichiers en Python
Méthode readlines()

La méthode readlines(), renvoie une liste dont les éléments


sont les lignes du fichier

1 f = open( ” myFile . txt ” , ’ r ’ )


2 content = f . readlines ()
3 print ( content [0]) # impression de la première l igne
4 print ( content [1]) # impression de la deuxième l igne

On peut donc via readlines (), récupérer le nombre de lignes


d’un fichier en appliquant la méthode len ():
1 # −*− coding : utf−8 −*−
2 f = open( ” myFile . txt ” , ’ r ’ )
3 content = f . readlines ()
4 nombre_lignes = len ( content )# récupération du nombre des lignes
du fichier
Commandes systèmes
Fichiers en Python

En récupérant le nombre des lignes d’un fichier, on peut


donc lire la totalité de ses lignes en utilisant la boucle for:

1 f = open( ” myFile . txt ” , ’ r ’ )


2 content = f . readlines ()
3 n = len ( content )
4 for i in range(0 ,n−1) :
5 print ( content [ i ])
Commandes systèmes
Fichiers en Python

En récupérant le nombre des lignes d’un fichier, on peut


donc lire la totalité de ses lignes en utilisant la boucle for:

1 f = open( ” myFile . txt ” , ’ r ’ )


2 content = f . readlines ()
3 n = len ( content )
4 for i in range(0 ,n−1) :
5 print ( content [ i ])
Commandes systèmes
Fichiers en Python

Lecture d’un fichier à une position précise avec la


méthode readlines ()

La méthode readlines () nous permet aussi de lire un fichier


à une position bien précise

Lecture d’un fichier depuis le caractère 10 jusqu’au caractère 20


de la troisième ligne:

2 f = open( ” myFile . txt ” , ’ r ’ )


3 content = f . readlines () [2] #récupération de la deuxième l igne
4 result = content[9 :21] # extraction depuis le caractère qui se
trouve à la position 10 jusqu’à 20
5 print ( result )
Commandes systèmes
Fichiers en Python
Lecture et écriture à une position donnée à l’aide de la
méthode seek ()

La méthode seek () permet de sélectionner une position précise


pour lecture ou écriture

2 f = open( ” myFile . txt ” , ’ r ’ )


3 f . seek(5) # sélection de la position
4 print ( f . read () ) #lire fichier à partir de la 6 ème position

2 f = open( ” myFile . txt ” , ’ r+’ )


3 f . seek(5) # sélection de la position 5
4 print ( f . write ( ” . . . . ” ) ) #mettre des points sur le fichier
à partir de la 6ème position
Commandes systèmes
Fichiers en Python
Pour écrire dans un fichier existant, vous devez ajouter un
paramètre à la fonction open() :
1. "a" - Append - sera ajouté à la fin du fichier
2. "w" - Write - écrasera tout contenu existant
3. ”r+” Lecture et écriture sans écraser le contenu
existant

1 f = open ( ” myFile . txt ” , ”a” )


2 f . write (” Voici un contenu qui va s ’ ajouter au fichier sans écraser le
contenu !” )
3 f . close ()
4 # Ouvrir et lire le fichier après l’ajout:
5 f = open ( ” myFile . txt ” , ” r ” )
6 print ( f . read () )
Commandes systèmes
Fichiers en Python

Ouvrir le fichier "myFile.txt" et écrasez le contenu :

1 f = open ( ” myFile . txt ” , ”w” )


2 f . write ( ” Désolé ! J ’ ai supprimé le contenu !” )
3 f . close ()
4 # ouvrir et l i r e le f i c h i e r après ’ lajout :
5 f = open ( ” myFile . txt ” , ” r ” )
6 print ( f . read () )
Commandes systèmes
Fichiers en Python
Créer un nouveau fichier:
Pour créer un nouveau fichier en Python, on utilise la méthode open(), avec l’un les
pa- ramètres suivants :
1. "x" - Create - crée un fichier, renvoie une erreur si le fichier existe
2. "a" - Append - créera un fichier si le fichier spécifié n’existe pas
3. "w" - Write - créera un fichier si le fichier spécifié n’existe pas

Exemple. Création d’un fichier nommé "myFile.txt" :


1 f = open ( ” myFile . txt ” , ”x” )
Résultat : un nouveau fichier vide est créé !

Exemple. Création d’un nouveau fichier s’il n’existe pas :

1 f = open ( ” myFile . txt ” , ”w” )


Commandes systèmes
Fichiers en Python
Récapitulatif des méthodes Python associées à un ob-
jet fichier avec description:
1. file.close() : ferme un fichier ouvert.
2. file.fileno() : retourne un descripteur entier d’un fichier.
3. file.flush() : vide le tampon interne.
4. file.isatty() : renvoie true si le fichier est connecté à un périphérique
tty.
5. file.next() : retourne la ligne suivante du fichier.
6. fichier.read(n) : lit les n premiers caractères du fichier.
7. file.readline() : lit une seule ligne dans une chaîne ou un fichier.
8. file.readlines() : lit et renvoie la liste de toutes les lignes du fichier.
9. file.seek( ) : définit la position actuelle du fichier.
10. file.seekable() : vérifie si le fichier prend en charge l’accès
aléatoire. Renvoie true si oui.
Commandes systèmes
Fichiers en Python
Récapitulatif des méthodes Python associées à un ob jet
fichier avec description:

1. file.tell() : retourne la position actuelle dans le fichier.


2. file.truncate(n) : tronque la taille du fichier. Si n est fourni, le
fichier est tronqué à n octets, sinon tronqué à l’emplacement
actuel.
3. file.write(str) : écrit la chaîne str dans le fichier.
4. file.writelines(séquence) : écrit une séquence de chaînes
dans le fichier.
Commandes systèmes
Fichiers en Python
Python et les bases de données

Creation de tables et de bases de données SQLite3

SQLite est une bibliothèque qui fournit une base de données


légère sur disque ne nécessitant pas de processus serveur
distinct et permet d’accéder à la base de données à l’aide d’une
variante du langage de requête SQL. Certaines applications
peuvent utiliser SQLite pour le stockage de données interne. Il
est également possible de prototyper une application utilisant
SQLite, puis de transférer le code dans une base de données
plus grande telle que PostgreSQLou Oracle.
Commandes systèmes
Fichiers en Python
Python et les bases de données

Creation de tables et de bases de données SQLite3

Pour utiliser le module, vous devez d’abord créer un objet Connection


qui représente la base de données. Dans l’exemple ci-dessous, les
données seront stockées dans le fichier mabase.db:

1 import sqlite 3
2 conn = sqlite 3 . connect( ’mabase. db ’ )

Remarque: Vous n’êtes pas obligé de créer la base de données


mabase.db, mais elle sera crée automatiquement dans le même
répertoire que le fichier Python !
Commandes systèmes
Fichiers en Python
Python et les bases de données

Creation de tables et de bases de données SQLite3

Une fois que vous avez une connexion, vous pouvez créer un objet Cursor
et appeler sa méthode execute() pour exécuter des commandes SQL :

1 # Créer un cursor
2 cur = conn. cursor ()

Si on veut créer une table au sein de la base SQLite3 mabase.db, il


suffit d’utiliser la commande CREATE TABLE nom_de_la_table :
1 import sqlite 3
2 conn = sqlite 3. connect(’mabase. db’ )
3 # Créer un cursor
4 cur = conn. cursor ()
5 # Création de la requete
Commandes systèmes
Fichiers en Python
Python et les bases de données

Creation de tables et de bases de données SQLite3


1 import sqlite 3
2 conn = sqlite 3. connect(’mabase. db’ )
3 # Créer un cursor
4 cur = conn. cursor ()
5 # Création de la requete
6 req =” CREATE TABLE students ( id INTEGER PRIMARY KEY
AUTOINCREMENT, name TEXT NOT NULL, email TEXT NOT NULL) ”
7 # Exécution de la requete
8 cur . execute( req)
9 # Envoyer la requete
10 conn. commit()
11 # Fermer la connexion
12 conn. close
Commandes systèmes
Fichiers en Python
Python et les bases de données

Insertion de données

L’insertion de données en environnement SQLite3 est exactement


identique au cas du MySql :

1 # Insérer une l igne de données


2 cur. execute ( ”INSERT INTO students ( ‘nom‘ , ‘ email ‘ ) VALUES ( ’
Albert ’ , ’ albert@gmail .com ’ ) ” )
3 # Commettre ou engager les données
4 conn. commit ()
Commandes systèmes
Fichiers en Python
Python et les bases de données

Insertion de données: Exemple

1 # −*− coding : utf−8 −*−


2 import sqlite 3
3 conn = sqlite 3 . connect( ’mabase. db ’ )

4 cur = conn. cursor ()

5 # Insérer une l igne de données

6 cur . execute( ”INSERT INTO students ( ‘nom‘ , ‘ email ‘ ) VALUES ( ’

Albert ’ , ’ albert@gmail .com ’ ) ” )


7 # Engager l ’ opération
8 conn. commit()

9 # Fermer la connexion

10 conn. close ()
Commandes systèmes
Fichiers en Python
Python et les bases de données
Insertion des données de variables dans une table SQLite
Quand on a inséré directement les données au sein de la requête
comme on a fait dans l’exemple précédent, aucun problème n’a été
rencontré
1 cur . execute( ”INSERT INTO students ( ‘nom‘ , ‘ email ‘ ) VALUES ( ’ Albert ’ , ’ albert@gmail .com ’ ) ” )

Considérer que les données qu’on souhaite insérer, sont des


valeurs de variables récupérées depuis un autre fichier ou
provenant d’un formulaire d’enregistrement. Dans ce cas l’insertion
des données de cette façon est totalement erronée !:

1 nom = ” Albert ”
2 email = ” albert@gmail .com”
3 cur . execute( ”INSERT INTO students ( ‘nom‘ , ‘ email ‘ ) VALUES (nom, email) ” )
4 # TOTALEMENT FAUX !
Commandes systèmes
Fichiers en Python
Python et les bases de données

Pour corriger l’erreur, on utilise la méthode de formatage des chaines à


l’aide du sym-bole : ” ?”

1 nom = ’ Albert ’
2 email = ’ albert@gmail .com ’

3 age = 22

4 cur = conn. cursor ()

5 cur . execute (” Insert into students (nom, email , age) values ( ?, ?, ?)”
,(nom, email , age) )
Commandes systèmes
Fichiers en Python
Python et les bases de données

Pour corriger l’erreur, on utilise la méthode de formatage des chaines à


l’aide du sym- bole : ” ?”

1 # −*− coding : utf−8 −*−


2 import sqlite 3
3 conn = sqlite 3 . connect( ’mabase. db ’ )
4 nom = ’ Albert ’
5 email = ’ albert@gmail .com ’
6 age = 22
7 # Créer un cursor
8 cur = conn. cursor ()
9 cur . execute( ” Insert into students (nom, email , age) values ( ?, ?, ?)”
,(nom, email , age) )
10 conn. commit()
Commandes systèmes
Fichiers en Python
Python et les bases de données

Affichage des données d’une table SQLite3

Il est tout à fait légitime de se demander si tout a été bien réglé :


création de la table students au sein de la base de données SQLite3 ,
insertion de données au sein de la table students.

Création d’un cursor pour exécuter une requête de sélection

1 cur = conn. cursor ()


2 result = cur . execute( ” select*from students ” )
Commandes systèmes
Fichiers en Python
Python et les bases de données

Parcourir les résultats de la sélection

Pour afficher les données, on va parcourir l’objet cursor par un


compteur row. La variable row qui fait le parcourt est un objet tuple
dont les constituants sont les valeurs des champs : id, nom, email,
age...

1 for row in result:


2 print ( ”ID : ” ,row[0])
3 print ( ”nom : ” ,row[1])
4 print ( ” Email : ” ,row[2])
5 print ( ”Age: ” ,row[3])
Commandes systèmes
Fichiers en Python
Python et les bases de données

Éditeur WYSIWYG SQLite3

Tout a été fait en noir! Jusqu’à présent vous n’avez encore


rien vue, ni table ni données.Pour répondre à cette
question, je vous informequ’il y a de nombreux utilitaires
permettant d’explorer les bases de données SQLite3. Je vous
recommande DB Browser for SQLite qui est gratuit et très
simple d’usage
Commandes systèmes
Fichiers en Python
Python et les bases de données

Éditeur WYSIWYG SQLite3


1. Téléchargez DB Browser for SQLite,
2. Installez le,
3. Lancez DB Browser
4. Depuis le menu File –> cliquez sur le sous menu Open Databse
5. Sélectionnez ensuite votre base de donnée mabase.db
6. Cliquez finalement sur Browse data pour voir votre table students
avec les donnée que vous venez d’insérer:
Commandes systèmes
Fichiers en Python
Python et les bases de données

Éditeur WYSIWYG SQLite3


Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Python fournit diverses options pour développer des interfaces graphiques
GUI :
1. Tkinter : Tkinter est l’interface Python de la bibliothèque
GUI Tk livrée avec Python. Nous allons l’étudier en détail
sur ce chapitre.
2. wxPython : Ceci est une implémentation en Python libre
et open source Python de l’interface de programmation
wxWidgets.
3. PyQt : Il s’agit également d’une interface Python pour
une bibliothèque d’interface graphique Qt populaire
multiplate-forme.
4. JPython : JPython est un outil Python pour Java, qui
donne aux scripts Python un accès transparent aux
bibliothèques de classes Java.
Il existe de nombreuses autres interfaces graphiques disponibles,
que vous pouvez trouver sur le net.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter

Bibliothèque graphique Tkinter


1. Importez le module Tkinter.
2. Créez la fenêtre principale de l’application
graphique.
3. Ajoutez un ou plusieurs des widgets
graphiques.
4. Entrez la boucle d’évènements principale
pour agir contre chaque évènement
déclenché par l’utilisateur.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter

Bibliothèque graphique Tkinter


Exemple. Création d’une simple fenêtre Tkinter

2 # Importation de la bibliothèque tkinter


3 from tkinter import*
4

5 # Création d ’ une fenêtre tkinter


6 maFenetre = Tk()
7

8 # vos widgets ici : bouton de commande, champ de saisie , labels


9

10 # Entrez la boucle d’événements principale


11 maFenetre. mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widgets Tkinter
Button : le widget Button permet de créer des boutons pour votre
1.

application.
Canva : le widget Canva permet de dessiner des formes, telles que
2.

des lignes, des ovales, des polygones et des rectangles, dans votre
application.
Checkbutton : le widget Checkbutton permet d’afficher un certain
3.

nombre d’options sous forme de cases à cocher. L’utilisateur peut


sélectionner plusieurs options à la fois.
Entry : le widget Entry est utilisé pour afficher un champ de texte
4.

d’une seule ligne permettant d’accepter les valeurs d’un utilisateur.


Frame : le widget Frame (cadre) est utilisé en tant que widget
5.

conteneur pour organiser d’autres widgets.


Label : le widget Label est utilisé pour fournir une légende ou
6.

description pour les autres widgets. Il peut aussi contenir des images.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widgets Tkinter
1. Listbox : le widget Listbox est utilisé pour fournir une liste
d’options à un utilisateur.
menubutton : le widget menubutton est utilisé pour afficher
1.

les menus dans votre application.


Menu : le widget Menu est utilisé pour fournir diverses
2.

commandes à un utilisateur. Ces commandes sont contenues


dans Menubutton.
Message : le widget Message est utilisé pour afficher des
3.

champs de texte multilignes permettant d’accepter les valeurs


d’un utilisateur.
Radiobutton : le widget Radiobutton est utilisé pour afficher
4.

un certain nombre d’op- tions sous forme de boutons radio.


L’utilisateur ne peut sélectionner qu’une option à la fois.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widgets Tkinter

1. Scale : le widget Echelle est utilisé pour fournir un widget à curseur.


Scrollbar : le widget Scrollbar ou barre de défilement est utilisé
2.

pour ajouter une fonc- tionnalité de défilement à divers widgets, tels


que les zones de liste.
3. Text : le widget Text est utilisé pour afficher du texte sur plusieurs lignes.
Toplevel : le widget Toplevel est utilisé pour fournir un conteneur de
4.

fenêtre séparé.
Spinbox : le widget Spinbox est une variante du widget standard
5.

Tkinter Entry, qui peut être utilisé pour sélectionner un nombre fixe
de valeurs.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widgets Tkinter

PanedWindow : le widget PanedWindow est un conteneur


1.

pouvant contenir un nombre quelconque de volets, disposés


horizontalement ou verticalement.
2.LabelFrame : un labelframe est un simple widget de
conteneur. Son objectif princi- pal est d’agir comme un
intercalaire ou un conteneur pour les dispositions de fenêtre
complexes.
tkMessageBox : ce module est utilisé pour afficher des boîtes
3.

de message dans vos applications.


Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Exemple de widget Tkinter
Widget Button
Pour créer un bouton de commande sur une fenêtre Tkinter, on utilise
la syntaxe :
1Nom_du_bouton = Button( Nom_de_la_fenêtre , text =” Texte du
bouton” , action = action_du_bouton () )
1 from tkinter import*
2 maFenetre = Tk()
3 #Création d ’un bouton de commande
4 b = Button(maFenetre , text = ” Quitter ” , command = quit )
5 # Placer le bouton sur la fenêtre
6 b. pack()
7 maFenetre. mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Label
1 Nom_du_label = Label (Nom_de_la_fenêtre , text =” Texte du label ” )

1 # −*− coding : utf−8 −*−

2 from tkinter import*


3 maFenetre = Tk()
5 #Création du label
6 l b l = Label (maFenetre , text = ”ENSAF ” )
7 # Placer le label sur la fenêtre
8 l b l . pack()
10 maFenetre. mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Label
On peut aussi utiliser un texte variable, afin de donner
la possibilité à l’utilisateur de modifier le texte :

1 # −*− coding : utf−8 −*−


2 from tkinter import *
3 fen = Tk()
4 var = StringVar ()
5 label = Label ( fen , textvariable=var)
6 var . set ( ”CRMEF OUJDA” )
7 label . pack()
8 fen . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
On peut aussi changer le texte via une action associé
à un bouton de commande
1 # −*− coding : utf−8 −*−
2 from tkinter import *
3 fen = Tk()
4 def action () :
5 var . set ( ” J ’ ai changé le texte en cliquant ” )
6 var = StringVar ()
7 label = Label ( fen , textvariable=var)
8 var . set ( ”CRMEF OUJDA” )
9 b = Button( fen , text = ” Essayez” , command=action )
10 b. pack()
11 label . pack()
12 fen . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Champ de saisie Entry

Le champ Entry permet de créer une zone de saisie sur


une seule ligne, pouvant servir à la récupération des
données saisie par l’utilisateur afin de les utiliser comme
variables, La syntaxe est
1 Nom_du_champ = Entry ( Nom_de_la_fenêtre , options . . . )

1 w = Entry (master , option , . . . )


2 # master: fenêtre parente .
3 #options : la liste des options pour le
widget Entry.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Exemple de Widget Entry:

1 from tkinter import *


2 root = Tk()
3 user_Entry = Entry ( root , bg=” blue ” )
4 user = Label ( root , text = ” User Name” )
5 user . pack()
6 user_Entry . pack()
7 root . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Liste des options pour le widget Entry
1. bg : définit la couleur d’arrière-plan du widget Entry.
2. bd : définit la taille des bordures. La valeur par défaut est 2 pixels.
3. command : définit et associe une commande
4. cursor : définit le motif du curseur de la souris
5. font : définit la police qui sera utilisée pour le texte.
6.exportselection : par défaut, si vous sélectionnez du texte dans
un widget Entry, il peut être exporté vers le Presse-papiers. Pour
éviter cette exportation, utilisez export- selection = 0.
7. fg : définit la couleur qui sera utilisée pour le texte
8.highlightcolor : Il représente la couleur de surbrillance à utiliser
pour le rectangle qui est dessiné autour du widget lorsqu’il a le focus.
9.justify : Il spécifie comment le texte est organisé s’il contient
plusieurs lignes. 10relief Spécifie le type de bordure. Sa valeur par
défaut est FLAT.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Liste des options pour le widget Entry

1) selectbackground : la couleur d’arrière-plan du texte sélectionné.


2) selectborderwidth : définit la largeur de la bordure à utiliser
autour du texte sélec- tionné. La valeur par défaut est un pixel.
3) selectforeground : définit la couleur de premier plan du texte
sélectionné.
4) show : est utilisé pour afficher ou masquer les caractères.
Exemple pour un mot de passe on utilise show = "*".
5) state : la valeur par défaut est state = NORMAL, mais vous
pouvez utiliser state = DISABLED pour masquer le contrôle et le
rendre inactif.
6) textvariable : Pour pouvoir extraire le texte actuel de votre widget
Entry, vous devez définir cette option sur une instance de la classe
StringVar.
7) width : définit la largeur du widget
8) xscrollcommand : ajoute une barre de défilement au widget.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Méthodes associés au Widget Entry
1) get() : renvoie le texte actuel de l’entrée sous forme de variable chaîne.
2) icursor(index) : place le curseur d’insertion juste avant le caractère à l’index donné.
3) index(index) : décale le contenu de l’entrée de sorte que le caractère à l’index
donné soit le caractère visible le plus à gauche. N’a aucun effet si le texte est
entièrement contenu dans l’entrée.
4) insert(index, s) : insère la chaîne s avant le caractère à l’index donné.
5) select_adjust (index) : cette méthode permet de s’assurer que la sélection
inclut le caractère à l’index spécifié.
6) select_clear () : efface la sélection. S’il n’y a pas actuellement de sélection, n’a
aucun effet.
7) select_form(index) : définit la position de l’index d’ancrage sur le caractère
spécifiépar l’index.
8) select_present() : s’il y a une sélection, renvoie vrai, sinon renvoie faux.
9) select_range(début, fin) : sélectionne les caractères qui existent dans la plage
spé- cifiée.
10) select_to(index) : sélectionne tous les caractères du début à l’index spécifié.
11) xview(index) : utilisé pour lier le widget de saisie à une barre de défilement
horizon- tale.
12) xview_scroll() : utilisé pour faire défiler l’entrée horizontalement.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Exemple Widget Entry

1 from tkinter import *


2 root = Tk()
3 user = Label ( root , text = ” User Name” )
4 user . pack( side = LEFT )
5 user_Entry = Entry ( root , bd = 10, bg=” green” )
6 user_Entry . pack( side=RIGHT )
7 root . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Exemple Widget Entry

1 from tkinter import *


2 root = Tk()
3 user = Label ( root , text = ” User Name” )
4 user . pack( side = LEFT )
5 user_Entry = Entry ( root , bd = 10, bg=” green” )
6 user_Entry . pack( side=RIGHT )
7 root . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Associer une action ou évènement à un Widget Tkinter
1) Associer une action à un bouton de commande
2) Associer un évènement à un bouton de commande (bind
action)
3) Associer un évènement à un champ Entry (bind action)

On peut associer un évènement à un champ de saisi à l’aide de


la méthode bind() :

1 entry . bind( ”<Return>” , actionEvent )


Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Evènement associé à un champ de saisi :

1 def actionEvent ( event) :


2 l b l . configure ( text = ”Vous avez tapé = ”+ entry . get () )
3 root = Tk()
4 entry = Entry ( root )
5 # Association de lévènement actionEvent au champ de saisie
6 entry . bind( ”<Return>” , actionEvent )
7 l b l = Label ( root , text = ” ” )
8 entry . pack()
9 l b l . pack()
10 root . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Syntaxe & description du widget Text

Le widget Text offre des fonctionnalités avancées vous permettant


d’éditer un texte mul- tilingue et de formater son affichage, en
modifiant sa couleur et sa police...
Vous pouvez également utiliser des structures élégantes telles que des
onglets et des marques pour localiser des sections spécifiques du texte
et appliquer des modifications à ces zones. De plus, vous pouvez
incorporer des fenêtres et des images dans le texte car ce widget a
été conçu pour gérer à la fois le texte brut et le texte mis en forme.
Syntaxe pour du widget Text
1 Nom_du_widget_Text = Texte ( parent , options , . . . )

Le paramètre parent : représente la fenêtre parent.


options : représente la liste des options pour le widget.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Syntaxe & description du widget Text
Le widget Text offre des fonctionnalités avancées vous
permettant d’éditer un texte mul- tilingue et de formater son
affichage, en modifiant sa couleur et sa police...
Vous pouvez également utiliser des structures élégantes telles
que des onglets et des marques pour localiser des sections
spécifiques du texte et appliquer des modifications à ces zones.
De plus, vous pouvez incorporer des fenêtres et des images dans
le texte car ce widget a été conçu pour gérer à la fois le texte
brut et le texte mis en forme.
Nom_du_widget_Text = Texte ( parent , options , . . . )

Le paramètre parent : représente la fenêtre parent.


options : représente la liste des options pour le widget.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Syntaxe & description du widget Text
Le widget Text offre des fonctionnalités avancées vous
permettant d’éditer un texte mul- tilingue et de formater son
affichage, en modifiant sa couleur et sa police...
Vous pouvez également utiliser des structures élégantes telles
que des onglets et des marques pour localiser des sections
spécifiques du texte et appliquer des modifications à ces zones.
De plus, vous pouvez incorporer des fenêtres et des images dans
le texte car ce widget a été conçu pour gérer à la fois le texte
brut et le texte mis en forme.
Nom_du_widget_Text = Texte ( parent , options , . . . )

Le paramètre parent : représente la fenêtre parent.


options : représente la liste des options pour le widget.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Les options disponibles pour le widget Text

Voici la liste des options les plus utilisées pour ce widget. Ces
options peuvent être utilisées sous forme de paires clé-valeur
séparées par des virgules :
1. bg : la couleur d’arrière-plan par défaut du widget de texte.
2. bd : la largeur de la bordure autour du widget de texte. La valeur par défaut est 2
pixels.
3.
cursor : le curseur qui apparaîtra lorsque la souris survolera le widget texte.
4. exportselection : normalement, le texte sélectionné dans un widget de

texte est ex- porté pour être sélectionné dans le gestionnaire de fenêtres.
Définissez export selection= 0 si vous ne voulez pas ce comportement.
5. font : la police par défaut pour le texte inséré dans le widget.

6. fg : la couleur utilisée pour le texte (et les bitmaps) dans le widget. Vous

pouvez changer la couleur pour les régions marquées ; cette option est
juste la valeur par défaut.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Les options disponibles pour le widget Text
1. height : la hauteur du widget en lignes (pas en pixels !), Mesurée en fonction de la taille de la police
actuelle.
2. highlightbackbackground : la couleur du focus est mise en surbrillance lorsque le widget de texte
n’a pas le focus.
3. highlightcolor : la couleur du focus est mise en surbrillance lorsque le widget de textea le focus.
4. highlightthickness : l’épaisseur du focus est mise en évidence. La valeur par défaut est
1. Définissez l’épaisseur de la sélection = 0 pour supprimer l’affichage de la surbrillance.
5. insertbackground : la couleur du curseur d’insertion. Le défaut est noir.
6. insertborderwidth : taille de la bordure 3D autour du curseur d’insertion. La valeur par défaut est 0.
7. insertofftime : le nombre de millisecondes pendant lequel le curseur d’insertion est désactivé
pendant son cycle de clignotement. Définissez cette option sur zéro pour supprimer le clignotement.
La valeur par défaut est 300.
8. insertontime : le nombre de millisecondes pendant lequel le curseur d’insertion est activé pendant
son cycle de clignotement. La valeur par défaut est 600.
9. insertwidth : largeur du curseur d’insertion (sa hauteur est déterminée par l’élément le plus grand de
sa ligne). La valeur par défaut est 2 pixels.
10.padx : la taille du remplissage interne ajouté à gauche et à droite de la zone de texte. La valeur par
défaut est un pixel.
11.pady : la taille du remplissage interne ajouté au-dessus et au-dessous de la zone de texte. La valeur
par défaut est un pixel.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Les options disponibles pour le widget Text
1. relief : l’apparence 3-D du widget de texte. La valeur par défaut est relief =
SUNKEN.
2. selectbackground : la couleur de fond à utiliser pour afficher le texte sélectionné.
3. selectborderwidth : la largeur de la bordure à utiliser autour du texte sélectionné.

4. spacing1 : cette option spécifie combien d’espace vertical supplémentaire

est placé au-dessus de chaque ligne de texte. Si une ligne est renvoyée à la
ligne, cet espace est ajouté uniquement avant la première ligne occupée à
l’écran. La valeur par défaut est 0.
5. spacing2 : cette option spécifie la quantité d’espace vertical supplémentaire

à ajouter entre les lignes de texte affichées lorsqu’une ligne logique est
renvoyée à la ligne. La valeur par défaut est 0
6. spacing3 : cette option spécifie combien d’espace vertical supplémentaire

est ajouté en dessous de chaque ligne de texte. Si une ligne est renvoyée à
la ligne, cet espace est ajouté uniquement après la dernière ligne occupée à
l’écran. La valeur par défaut est 0.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Les options disponibles pour le widget Text
1. state : normalement, les widgets de texte répondent aux évènements de clavier et
de souris ; set state = NORMAL pour obtenir ce comportement. Si vous définissez
state = DISABLED, le widget texte ne répondra pas et vous ne pourrez pas non
plus modifier son contenu par programme.
2. tabs : cette option contrôle la manière dont les caractères de tabulation

positionnent le texte.
3. width : la largeur du widget en caractères (pas en pixels !), Mesurée en fonction

de la taille de la police actuelle.


4. wrap : cette option contrôle l’affichage des lignes trop larges. Définissez wrap =

WORD et la ligne sera coupée après le dernier mot qui convient. Avec le
comportement par défaut, wrap = CHAR, toute ligne trop longue sera brisée par
n’importe quel caractère.
5. xscroll : pour que le widget texte puisse défiler horizontalement, définissez cette

option sur la méthode set() de la barre de défilement horizontale.


6. yscroll : pour que le widget texte puisse défiler verticalement, définissez cette

option sur la méthode set() de la barre de défilement verticale.


Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Les méthodes associées pour le widget Text

1. delete (startindex [, endindex]) : cette méthode supprime un caractère


spécifique ou une plage de texte.
2. get (startindex [, endindex]) : cette méthode retourne un caractère

spécifique ou une plage de texte.


3. index (index) : etourne la valeur absolue d’un index basé sur l’index donné.

4. insert (index [, string] ...) : cette méthode insère des chaînes à

l’emplacement d’in- dex spécifié.


5. see(index) : ette méthode retourne true si le texte situé à la position d’index est
visible.
6. mark_gravity (mark [, gravity]) : retourne la gravité de la marque

donnée. Si le deuxième argument est fourni, la gravité est définie pour la


marque donnée.
7. mark_names () : retourne toutes les marques du widget Texte.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Les méthodes associées pour le widget Text
1. mark_set (mark, index) : informe une nouvelle position par rapport à
la marque donnée.
2. mark_unset (mark) : supprime la marque donnée du widget Texte.

3. tag_add (tagname, startindex [, endindex] ...) : cette méthode balise

la position définie par startindex ou une plage délimitée par les positions
startindex et endindex.
4.

tag_config() : Vous pouvez utiliser cette méthode pour configurer les


propriétés de la balise, qui comprennent, justifier (centre, gauche ou
droite), des onglets (cette pro- priété a les mêmes fonctionnalités que la
propriété des onglets du widget Texte) et un soulignement (utilisé pour
souligner le texte marqué). ).
5. tag_delete (tagname) : cette méthode est utilisée pour supprimer une
balise donnée.
1. tag_remove (tagname [, startindex [.endindex]] ...) : après avoir

appliqué cette méthode, la balise donnée est supprimée de la zone fournie


sans supprimer la définition de balise réelle.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Widget Texte
Exemple

1 # −*− coding : utf−8 −*−


2 from tkinter import *

3 root= Tk()

4 t = Text( root , fg=” red” , padx=50)


5 t . config ( font=(”broadway” , 14))
6 t . insert (1.0 , ”Exemple de widget Text Tkinter ” )
7 t . pack()
8 root . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widget Frame Tkinter
Le widget Frame (cadre) est très important pour le processus
de regroupement et d’organisation des autres widgets de manière
conviviale. Cela fonctionne comme un conteneur, qui est
responsable de la position des autres widgets. Il utilise des zones
rectangulaires à l’écran pour organiser la mise en page et fournir
un remplissage de ces widgets. Un Frame peut également être
utilisé comme classe de base pour implémenter des widgets
complexes.
Syntaxe :
1 w = Frame (master , option , . . . )
1.master : représente la fenêtre parente.

2.options : liste des options les plus couramment utilisées pour ce widget. Ces options peuvent être utilisées sous forme de
paires clé-valeur séparées par des virgules.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widget Frame Tkinter
Liste des options d’un widget Frame
1.bg : couleur d’arrière-plan du widget Frame
2.bd : taille des bordures autour du Frame.
3.cursor : permet de personnaliser le motif du curseur de la souris au moment du survole.
4.height : définit la dimension verticale du Frame.
5.highlightbackground : définit la couleur de la mise au point en surbrillance de l’objet Frame.
6.highlightcolor :
7.relief : avec la valeur par défaut relief = FLAT, la case à cocher ne ressort pas de son arrière-
plan. Vous pouvez définir cette option sur n’importe quel autre style.
8.width : définit la largeur du frame
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widget Frame Tkinter
Les attributs standard des widgets Tkinter

Malgré la diversité de leurs méthodes et propriétés, les widgets


Tkinter possèdent des attributs communs, tels que la taille, la
couleur et la police sont spécifiés:
1. Dimensions
2. Colors
3. Fonts
4. Anchors
5. Relief styles
6. Bitmaps
7. Cursors
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widget Frame Tkinter
Méthodes de gestion des dispositions géométriques des widgets

Tous les widgets Tkinter ont accès aux méthodes de gestion de


géométrie spécifiques, qui ont pour but d’organiser les widgets dans
la zone du widget parent. Tkinter possède les classes de
gestionnaire de géométrie suivantes :

1. La méthode pack()
2. La méthode grid()
3. La méthode place()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widget Frame Tkinter
Méthodes de gestion des dispositions géométriques des widgets

Méthode de disposition géométrique pack()


Le gestionnaire de disposition géométrique pack(), organise les widgets
en blocs avant de les placer dans le widget parent. Les widgets sont
placés l’un au dessous de l’autre selon l’ordre d’application de la méthode
pack() avec un emplacement centré par défaut.
1 # −*− coding : utf−8 −*−
2 from tkinter import *
4 #Création d ’ une fenêtre Tkinter
5 f = Tk()
6 f . geometry( ”300x150” )
7 Nom = Label ( f , text = ” Saisissez votre nom : ” )
8 Prenom = Label ( f , text=” Saisissez votre prénom : ” )
9 champNom = Entry ( f ) champPrenom = Entry ( f )
10 Nom. pack()
11 champNom. pack()
12 Prenom. pack()
13 champPrenom. pack()
14 f . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widget Frame Tkinter
Méthodes de gestion des dispositions géométriques grid()

Le gestionnaire de disposition géométrique grid(), organise les


widgets dans une structure de type table dans le widget parent.
2 from tkinter import *
4 #Création d ’ une fenêtre
5 Tkinter f = Tk()
6 f . geometry( ”350x100” )
8 #Création des widgets
9 Nom = Label ( f , text = ” Saisissez votre nom : ” )
10 Prenom = Label ( f , text=” Saisissez votre prénom : ” )
11 champNom = Entry ( f )
12 champPrenom = Entry ( f )
14 #Application de la méthode grid () aux widget
15 Nom. grid (row=0, column=0)
16 Prenom. grid (row=1, column=0)
17 champNom. grid (row=0, column=1)
18 champPrenom. grid (row=1, column=1)
19 f . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
widget Frame Tkinter
Méthodes de gestion des dispositions géométriques place()
Le gestionnaire de disposition géométrique place(), organise les widgets
plaçant à des positions spécifiques dans le widget parent suivant leurs coordo
et leurs dimensions :
2 from tkinter import *
4 #Création d ’ une fenêtre Tkinter
5 f = Tk()
6 f . geometry( ”400x200” )
8 #Création des widgets
9 Nom = Label ( f , text = ” Saisissez votre nom : ” )
10 Prenom = Label ( f , text=” Saisissez votre prénom : ” )
11 champNom = Entry ( f )
12 champPrenom = Entry ( f )
13 #Application de la méthode place () aux widget
14 Nom. place (x=5, y=75, width=160, height=25)
15 champNom. place (x=175, y=75, width=160, height=25)
16 Prenom. place (x=5, y=120, width=160, height=25)
17 champPrenom. place (x=175, y=120, width=160, height=25)
18 f . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Action associée à un bouton de commande
Menu Tkinter en Python

Le rôle de ce widget est de vous permettre de créer toutes sortes de menus


utilisables par vos applications. La creation d’un menu se déroule selon les
étapes suivantes :

Création de la barre des menus


1 menuBar = Menu (master) # master designe la fenêtre principale
Création d’un menu principale :
1 menuPrincipal = Menu(menuBar, tearoff = 0)
2 #tearoff = 0 pour menu non détachable , tearoff=1 pour menu détachable
3 menuBar.add_cascade(label=” label du menu principal”, menu=menuPrincipal )
Création d’une commande ou sous menu du menu principal
menuPrincipal .add_command( label=”Sous_menu” , command = ” . . ” )
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Action associée à un bouton de commande
Menu Tkinter en Python
Configuration de la barre des menus
1 master.config(menu=menuBar)
1 from tkinter import*
2 master = Tk()
3 # Création de la barre des menu
4 menuBar = Menu(master)
5 # Création du menu principal ’ Fichier ’
6 menuFichier = Menu(menuBar, tearoff = 0)
7 menuBar. add_cascade( label=” Fichier ” ,menu=menuFichier )
8 # Création des sous menus : ’Nouveau ’ , ’ Ouvrir ’ , ’ Quitter ’
9 menuFichier .add_command( label=”Nouveau” )
10 menuFichier .add_command( label=” Ouvrir ” )
11 menuFichier .add_command( label=” Quitter ” , command=q uit )
12 # Configuration de la barre des menus
13 master . config (menu=menuBar)
14 master . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Pillow et manipulation d’images sur une fenêtre Tkinter
Bibliothèque Pillow
Pour traiter des images, Python dispose d’une librairie nommée Pillow.
Pillow constitue actuellement un fork successeur du projet PIL (Python
Imaging Library). Elle est conçue de manière à offrir un accès rapide
aux données contenues dans une image, elle est doté d’un pouvoir
magique et puissant pour le traitement et la manipulation des différents
formats de fichiers images tels que PNG, JPEG, GIF, TIFF et BMP.

Installation de la bibliothèque Pillow


1 pip install pillow
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Insertion d’image à l’aide de la bibliothèque Pillow
Maintenant que la bibliothèque Pillow est installé, elle peut être
utilisée pour insérer et manipuler des images au sein d’une fenêtre
Tkinter. Pour ce faire, il suffit de l’importer et de créer un objet
image à partir d’un fichier:
1 from PIL import Image, ImageTk
2 # Création de l ’ objet image
3 load = Image.open( ” chemin_vers_le_fichier_images” )
4 # Création de la photo à partir de l ’ objet image
5 photo = ImageTk. PhotoImage( load )
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Insertion d’image à l’aide de la bibliothèque Pillow
Pour bien comprendre, nous allons traiter cela sur un exemple simple :
Considérons une image nommée voiture.png qui se trouve dans un
dossier images
1 from tkinter import *
Remarque: On peut 2 from PIL import Image, ImageTk
redimensionner l’image à 3 root = Tk()
l’aide la méthode 4 root . t i t l e ( “Tkinter window” )
thumbnail(): 5 root . geometry(”300x200”)
6 # Création de l ’ objet image
1 # Création de l ’ objet image 7 load = Image.open(”images/ voiture . png” )
2 load = Image.open( ”images/ voiture .
png” )
8 # Création de la photo à partir de l ’ objet image
3 # Redimensionner l ’ image 9 photo = ImageTk. PhotoImage( load )
4 load . thumbnail((50 ,50) ) 10 # Placer l ’ image dans un label
11 label_image = Label ( root , image=photo)
12 label_image.place(x=0, y=0)
13 root.mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Module Filedialogue et methods associés
FileDialog est un module avec des fonctions de dialogue d’ouverture et
de sauvegarde, qui pourra vous aider à améliorer votre interface
graphique Tkinter pour ouvrir ou sauvegarder vos fichiers.

Le module Filedialogue est doté de trois principale méthodes:

1. askopenfilename(): affiche une boite de dialogue qui demande


l’ouverture d’un fichier existant.
2. asksaveasfilename(): affiche une boite de dialogue qui permet
d’enregistrer un fichier
3. askdirectory(): affiche une boite de dialogue qui demande
l’ouverture d’un répertoire.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Méthode askopenfilename
Comme nous l’avons expliqué ci haut, cette méthode affiche une
boite de dialogue qui demande de sélectionner le ficher à ouvrir et
récupère le fichier avec son chemin sur une variable. Elle possède
les paramètres suivants:
1. initialdir: qui permet de pointer vers un répertoire intial dès son

ouverture.
2. title: qui permet de personnaliser le titre de la boite de dialogue

3. filetypes: qui permet de spécifier les types de fichiers à ouvrir

Exemple.
1 from tkinter import filedialog
2 from tkinter import*
3 root=Tk()
4 filename=filedialog.askopenfilename(initialdir=”/”, title=”
Select File”, filetypes=((”png files”,”*.png” ) ,(” jpeg files”,
”*.jpg” ) ,( ” all files”,”*.*”)))
5 print (filename)
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Méthode askopenfilename
Ce qui permet de lancer la boite de dialogue suivante:
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Méthode asksaveasfilename

Cette méthode est semblable à la précendente à la différence qu’elle


enregistre un fichier au lieu de l’ouvrir et elle possède donc exactement
les mêmes paramètres
1 from tkinter import file dialog
2 from tkinter import *
3 root = Tk ()
4 filename=file dialog.asksaveasfilename(initialdir=”/”, title=” Select file”,
filetypes=((”png files”,”*.png”),(”jpeg files”,”*.jpg”),(”all files”,”*.*”)))
5 print ( filename )
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Méthode askdirectory
Exemple.

1 from tkinter import *

2 from tkinter import file dialog

3 root = Tk()

4 myDirectory = file dialog.askdirectory()

5 print(myDirectory)
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
A propos du module tkinter.ttk
Le module tkinter.ttk est une extension de la bibliothèque Tkinter qui
fournit un accès au jeu de style pour les widgets Tk.
Les widgets dans tkinter sont hautement et facilement configurables.
Vous avez un contrôle presque total sur leur apparence : largeurs de
bordure, polices, images, couleurs, etc. Mais avec un style pauvre et très
basique.
Les widgets ttk utilisent des styles pour définir une apparence et un look
agréable. Il faut donc un peu plus de travail si vous souhaitez un bouton
non standard. Les widgets ttk sont également un peu sous-documentés.
En règle générale, les widgets à thème ttk vous donneront une
application plus "native", mais aux dépens d’une perte de configurabilité.
Il est conseillé d’utiliser les widgets ttk si vous voulez que votre interface
graphique ap- paraisse un peu plus moderne, et les widgets tkinter si
vous avez besoin d’un peu plus de configurabilité. Vous pouvez les utiliser
tous les deux dans les mêmes applications.
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
A propos du module tkinter.ttk

Usage du module tkinter.ttk

Afin de pouvoir utiliser le module ttkinter.ttk, il faut préalablement


l’importer en même temps que la bibliothèque Tkinter :

1 from tkinter import ttk

2 from tkinter import *

3 from tkinter . ttk import *


Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
A propos du module tkinter.ttk

Usage du module tkinter.ttk : Button, Label & Entry

Afin de pouvoir utiliser le style du module ttk, il faut au préalable


créer un style en appelant la méthode style() de la classe ttk :

1 style = ttk . Style ()


2 style . configure ( . . . )

Exemple. Création d’un ttk style pour un bouton

1 style = ttk . Style ()


2 style . configure ( ”BW. TButton” , foreground=” blue ” , background=” red” )
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
A propos du module tkinter.ttk

Usage du module tkinter.ttk : Button, Label & Entry

Code complet :

1 from tkinter import ttk


2 from tkinter import *
3 from tkinter . ttk import *
4 root = Tk()
5 style = ttk . Style ()
6 style . configure ( ”BW. TButton” , foreground=” blue ” , background=”
red” )
7 b = ttk . Button( text = ”ENSA Fes” , style=”BW. TButton” ) b. pack()
8 root . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Usage de ttk. Combobox
L’objet Combobox du module ttk Tkinter, permet de créer des listes
déroulantes avec plusieurs options.
1 combo = ttk .Combobox( fenêtre_principale , values = l iste_valeurs )
Exemple. Liste Combobox
1 import tkinter as tk
2 from tkinter import ttk
3 # Fenêtre principale
4 root = tk . Tk()
5 root . geometry( ’300x200 ’ )
6 # Label au top
7 labelTop = tk . Label ( root , text = ” Choisissez votre Laptop” )
8 labelTop.pack()
9 # Liste des valeurs d ’ option de la combobox
10 liste_valeurs=[” Acer” , ”HP” , ” Del” , ”Asus” ]
11 # Création la l i s t e combobox
12 combo = ttk .Combobox( root , values = l iste_valeurs )
13 combo. pack()
14 # Définir l ’ élément qui s ’ affiche par défaut
15 combo. current (0)
16 root . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Usage de ttk. Combobox
Remarque. On peut aussi associer une action liée (bind action) en utilisant
la commande :
1 combo. bind( ”<<ComboboxSelected>>” , comboAction)
Exemple. Code complet de la liste Combo
1 import tkinter as tk 13 l iste_valeurs=[” Acer” , ”HP” , ” Del” ,
2 from tkinter import ttk ”Asus” ]
3 # Définir l ’ action l i é e ( bind action ) 14 # Création la l i s t e combobox
4 def comboAction( event) : 15 combo = ttk .Combobox( root , values = l
5 select = combo. get () iste_valeurs )
6 print ( ”Vous avez choisie : ” , select ) 16 combo. pack()
7 # Fenêtre principale 17 # Définir l ’ élément qui s ’ affiche par
8 root = tk . Tk() défaut
9 root . geometry( ’300x200 ’ ) 18 combo. current (0)
10 # Label au top 19 # Associé une bind action à la l i s t e
11 labelTop = tk . Label ( root , text = ” combo
Choisissez votre Laptop” ) 20 combo. bind( ”<<ComboboxSelected>>” ,
12 labelTop . pack() comboAction)
21 root . mainloop()
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Usage de ttk. TreeView
L’objet Treeview du module ttk, permet d’organiser et de
visualiser des données sur une fenêtre Tkinter. Le rôle de l’objet
Treeview est similaire à celui de l’objet JTable de Java Suing. Si
vous avez déjà programmer des application graphique GUI Java
Swing, vous allez apprendre avec aisance à utiliser ce truc.
Pour bien comprendre et apprécier le fonctionnement de l’objet
Treeview, nous allons le traiter sur un exemple concret: on
souhaite par exemple visualiser les donnée d’une table sql
contenant les données des étudiants:
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Usage de ttk. TreeView
1 from tkinter import * 13 # === Création de l ’ entête ===

2 from tkinter import ttk 14 tree . heading(1 , text=”ID” )

3 root = Tk() 15 tree . heading(2 , text=”Nom” )

4 root . geometry( ”500x200” ) 16 tree . heading(3 , text=” Email” )

5 # === Création de l ’ objet Treeview 27 tree . heading(4 , text=”Age” )


===
18 # === Insertion des données ===
6 tree = ttk . Treeview( root , columns =
(1 ,2 ,3 ,4) , height = 5 ,show = ” headings” ) 19 tree . insert ( ’ ’ , ’ end ’ , values = (1
, ” Albert ” , ” albert@gmail .com” ,27) )
7 tree . place (x=50,y=50, width=400)
20 tree . insert ( ’ ’ , ’ end ’ , values = (1 , ”
8 # === dimension des colonnes === Majid” , ”[email protected]” ,33) )

9 tree . column(1 , width = 20) 21 tree . insert ( ’ ’ , ’ end ’ , values = (1


, ” Natalie ” , ” natalie@gmail .com” ,21) )
10 tree . column(2 , width = 70)
22 root . mainloop()
11 tree . column(3 , width = 150)

12 tree . column(4 , width=50)


Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Actions manipulant des widgets Tkinter
Usage de ttk. TreeView

Ce qui affiche après exécution:


Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Exemples de programmation Tkinter
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Exemples de programmation Tkinter
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Exemples de programmation Tkinter
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Exemples de programmation Tkinter
Commandes systèmes
Interfaces graphiques en Python avec Tkinter
Exemples de programmation Tkinter
Commandes système
Construction d’une page Web

Vous aimerez peut-être aussi