0% ont trouvé ce document utile (0 vote)
201 vues19 pages

Tutoriel Python: Variables, Opérations et Structures

Ce document présente un tutoriel sur Python avec des explications sur les variables, opérations, conditions, boucles, fonctions, listes. Il contient de nombreux exemples de code pour illustrer les concepts clés du langage Python.

Transféré par

aicha
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)
201 vues19 pages

Tutoriel Python: Variables, Opérations et Structures

Ce document présente un tutoriel sur Python avec des explications sur les variables, opérations, conditions, boucles, fonctions, listes. Il contient de nombreux exemples de code pour illustrer les concepts clés du langage Python.

Transféré par

aicha
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

26/09/2020 Tutoriel_Python - Jupyter Notebook

1. Variables
Nom :

doit commencer par une lettre


ne contient pas des caractères spéciaux
pas d'sepaces
on peut utliser des underscores '_'

Types standars :

entier (int)
nombre flottant (float)
chaîne de caractères (str)
booléen (bool)
autres (listes, tuples, dictonnaires, etc.)

Entrée [1]:

agePersonne = 14

Entrée [2]:

print(type(agePersonne))

<class 'int'>

Entrée [3]:

prixHT = 120.46

Entrée [4]:

print(type(prixHT))

<class 'float'>

Entrée [5]:

texte = "L'âge de la personne est {} et le prix HT est de {} dinars."


print(texte.format(agePersonne,prixHT))

L'âge de la personne est 14 et le prix HT est de 120.46 dinars.

Entrée [6]:

Prenom = 'Bassem'
print(type(Prenom))

<class 'str'>

localhost:8888/notebooks/Tutoriel_Python.ipynb 1/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

2. Opérations
Opérations en Python :

(+) (addition)
(-) (soustarction)
(*) (multiplication)
(/) (division)
(%) (modulo, c'est le reste de la division euclidienne)

Entrée [7]:

calcul = 5/2
calcul

Out[7]:

2.5

Entrée [8]:

calcul = int(calcul)
calcul2 = 5%2

Entrée [9]:

print('Résultat = ', calcul, 'Reste = ', calcul2)

Résultat = 2 Reste = 1

3. Conditions
Entrée [10]:

identifiant = 'Bassem'
mot_de_passe = 'password123'

Entrée [12]:

user_id = input('Entrer votre identifiant :')

Entrer votre identifiant :Bassem

Entrée [13]:

user_password = input('Entrer votre mot de passe :')

Entrer votre mot de passe :password123

localhost:8888/notebooks/Tutoriel_Python.ipynb 2/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [14]:

if user_password == mot_de_passe:
print('Vous êtes connectés, bienvenue', user_id)

Vous êtes connectés, bienvenue Bassem

Opérations de comparaison :

(==) Egalité
(!=) Différent
(<) Plus petit
(>) Plus grand
(<=) Plus petit ou égal
(>=) Plus grand ou égal

Conditions multiples :

(and) et
(or) ou
(in) appartient
(not in) n'appartient pas

Entrée [15]:

lettre_hasard = 'b'
if lettre_hasard in 'aeiouy':
print('une voyelle')
else:
print('une consonne')

une consonne

Mots clés : if - elif - else

Entrée [16]:

age = 24
if age == 18:
print("Tu viens d'être majeur")
elif age == 50:
print("Tu viens d'avoir 50 ans")
else:
print("Tu as", age, "ans")

Tu as 24 ans

Entrée [17]:

jeu_charge = True
if jeu_charge: #Par défaut jeu_charge == True ou == 1
print('Le jeu est en marche')
else:
print('Le jeu a été quité')

Le jeu est en marche

localhost:8888/notebooks/Tutoriel_Python.ipynb 3/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

if not jeu_charge: #Par défaut jeu_charge == False ou == 0

4. Boucles
Entrée [18]:

compteur = 0
while compteur<5:
print("Je m'appelle Bassem")
compteur+=1 # compteur = compteur + 1

Je m'appelle Bassem
Je m'appelle Bassem
Je m'appelle Bassem
Je m'appelle Bassem
Je m'appelle Bassem

Entrée [19]:

sentence = "Bonjour tout le monde :) !"


for letter in sentence:
print(letter)

B
o
n
j
o
u
r

t
o
u
t

l
e

m
o
n
d
e

:
)

Boucles : while / for

Mots clés : break (casse la boucle), continue (revient au début de la boucle)

localhost:8888/notebooks/Tutoriel_Python.ipynb 4/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [20]:

jeu_lance = True
while jeu_lance:
# Instructions en rapport avec le jeu
choix_menu = input(">")
if choix_menu == 'again':
continue
elif choix_menu == 'quit':
jeu_lance = False
elif choix_menu == 'hello':
print('Bonjour')
else:
print('commande introuvable')
print('A bientôt')

>again
>quit
A bientôt

5. Fonctions
Fonctions vues : print(), input(), type(), int(), float(), str(), bool()

Entrée [21]:

age = input('Quel âge as-tu ?')


age = int(age)
print('Tu as {} ans.'.format(age))

Quel âge as-tu ?42


Tu as 42 ans.

Entrée [22]:

def dire_bonjour():
print('Bonjour tout le monde.')

Entrée [23]:

dire_bonjour()

Bonjour tout le monde.

Entrée [24]:

def dialogue(nom_personne = 'Bassem', message_personne = 'Salut', age_personne = 40):


print('{} ({} ans) : {}'.format(nom_personne, age_personne, message_personne))

Entrée [25]:

dialogue()

Bassem (40 ans) : Salut

localhost:8888/notebooks/Tutoriel_Python.ipynb 5/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [26]:

dialogue('Mohamed', 'Bonjour', 24)

Mohamed (24 ans) : Bonjour

Entrée [27]:

list_items = ['A', 'Aa', 'B', 'Wf']


def show_inventory():
for item in list_items:
print(item)

Entrée [28]:

show_inventory()

A
Aa
B
Wf

Entrée [29]:

def calculer_somme(nombre1, nombre2):


result = nombre1 + nombre2
return result

Entrée [30]:

calculer_somme(4,14)

Out[30]:

18

Entrée [31]:

def comparer_nombres(nombre1, nombre2):


if nombre1 > nombre2:
return nombre1
elif nombre1 < nombre2:
return nombre2
else:
return 'Egalité'

Entrée [32]:

comparer_nombres(24,24)

Out[32]:

'Egalité'

Entrée [33]:

TTC = lambda prixHT: prixHT + (prixHT * 0.2) # Une fonction qui fait une seule chose

localhost:8888/notebooks/Tutoriel_Python.ipynb 6/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [34]:

TTC(24)

Out[34]:

28.8

6. Listes
Il n'y a pas de tableaux en Python. Les listes peuvent contenir n'importe quel type d'objets.

Création d'une liste : list() ou []

Entrée [35]:

inventaire = ['Aa', 24, True, 'Bf', 56, 'Gsd']

Entrée [36]:

inventaire * 2

Out[36]:

['Aa', 24, True, 'Bf', 56, 'Gsd', 'Aa', 24, True, 'Bf', 56, 'Gsd']

Entrée [37]:

inventaire[:]

Out[37]:

['Aa', 24, True, 'Bf', 56, 'Gsd']

Entrée [38]:

inventaire[1:3]

Out[38]:

[24, True]

Entrée [39]:

inventaire[-1]

Out[39]:

'Gsd'

Entrée [40]:

inventaire[:2]

Out[40]:

['Aa', 24]

localhost:8888/notebooks/Tutoriel_Python.ipynb 7/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [41]:

inventaire[2:]

Out[41]:

[True, 'Bf', 56, 'Gsd']

Entrée [42]:

i=0
while i<len(inventaire):
print(inventaire[i])
i+=1

Aa
24
True
Bf
56
Gsd

Entrée [43]:

inventaire.append('Fdx')
inventaire

Out[43]:

['Aa', 24, True, 'Bf', 56, 'Gsd', 'Fdx']

Entrée [44]:

inventaire.insert(2, False)
inventaire

Out[44]:

['Aa', 24, False, True, 'Bf', 56, 'Gsd', 'Fdx']

Entrée [45]:

del inventaire[1]
inventaire

Out[45]:

['Aa', False, True, 'Bf', 56, 'Gsd', 'Fdx']

Entrée [46]:

inventaire.insert(0,'Bf')
inventaire

Out[46]:

['Bf', 'Aa', False, True, 'Bf', 56, 'Gsd', 'Fdx']

localhost:8888/notebooks/Tutoriel_Python.ipynb 8/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [47]:

inventaire.count('Bf')

Out[47]:

Entrée [48]:

inventaire.reverse()

Entrée [49]:

inventaire

Out[49]:

['Fdx', 'Gsd', 56, 'Bf', True, False, 'Aa', 'Bf']

Entrée [50]:

inventaire.clear()
inventaire

Out[50]:

[]

Entrée [51]:

help(list)

Help on class list in module builtins:

class list(object)
| list(iterable=(), /)
|
| Built-in mutable sequence.
|
| If no argument is given, the constructor creates a new empty list.
| The argument must be an iterable if specified.
|
| Methods defined here:
|
| __add__(self, value, /)
| Return self+value.
|
| __contains__(self, key, /)
| Return key in self.
|
| __delitem__(self, key, /)
| D l t lf[k ]

localhost:8888/notebooks/Tutoriel_Python.ipynb 9/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [52]:

liste = [2,16,45,32, 0]
type(liste)

Out[52]:

list

Entrée [53]:

sorted(liste)

Out[53]:

[0, 2, 16, 32, 45]

Entrée [54]:

chaine = 'Bonjour à tous'


chaine.split()

Out[54]:

['Bonjour', 'à', 'tous']

Entrée [55]:

liste1 = ['Aa', 'Bb']


liste2 = liste1

Entrée [56]:

liste2.append('Cc')

Entrée [57]:

liste2

Out[57]:

['Aa', 'Bb', 'Cc']

Entrée [58]:

liste1 # Modification de la liste originale

Out[58]:

['Aa', 'Bb', 'Cc']

Entrée [59]:

import copy
liste3 = copy.deepcopy(liste1)

Entrée [60]:

liste3.append('Dd')

localhost:8888/notebooks/Tutoriel_Python.ipynb 10/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [61]:

liste3

Out[61]:

['Aa', 'Bb', 'Cc', 'Dd']

Entrée [62]:

liste1

Out[62]:

['Aa', 'Bb', 'Cc']

Entrée [63]:

for objet in enumerate(liste3):


print(objet)

(0, 'Aa')
(1, 'Bb')
(2, 'Cc')
(3, 'Dd')

7. Tuples
Des conteneurs qu'on ne peut pas les modifier.

Entrée [64]:

mon_tuple = (15, 43)

Entrée [65]:

mon_tuple[0]

Out[65]:

15

Entrée [66]:

t = (15)
type(t)

Out[66]:

int

localhost:8888/notebooks/Tutoriel_Python.ipynb 11/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [67]:

t = (15,)
type(t)

Out[67]:

tuple

Entrée [68]:

def get_player_position():
posX = 143
posY = 86
return(posX,posY)
(coordX,coordY) = get_player_position()
print('Position du joueur : ({},{})'.format(coordX,coordY))

Position du joueur : (143,86)

8. Dictionnaires
Entrée [69]:

dic = {1 : 'Bassem', 2 : 'Mohamed', 3 : 'Safa'}

Entrée [70]:

type(dic)

Out[70]:

dict

Entrée [71]:

dic[1]

Out[71]:

'Bassem'

Entrée [72]:

dic[4] = 'Ali' # Ajout

Entrée [73]:

dic

Out[73]:

{1: 'Bassem', 2: 'Mohamed', 3: 'Safa', 4: 'Ali'}

localhost:8888/notebooks/Tutoriel_Python.ipynb 12/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [74]:

dic.pop(2) # Suppression

Out[74]:

'Mohamed'

Entrée [75]:

dic

Out[75]:

{1: 'Bassem', 3: 'Safa', 4: 'Ali'}

Entrée [76]:

if 2 in dic:
print('Oui')
else:
print('Non')

Non

Entrée [77]:

for key in dic.keys(): # Parcours


print(key)

1
3
4

Entrée [78]:

for key,value in dic.items():


print('Clé : {} - Valeur : {}'.format(key,value))

Clé : 1 - Valeur : Bassem


Clé : 3 - Valeur : Safa
Clé : 4 - Valeur : Ali

Entrée [79]:

dic2 = dic # Copie, toute modification apportée à dic2 sera aussi apportée à dic

Entrée [80]:

import copy
dic3 = dic.copy() # Copie à part

9. Chaînes de caratères

localhost:8888/notebooks/Tutoriel_Python.ipynb 13/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [81]:

help(str)

Help on class str in module builtins:

class str(object)
| str(object='') -> str
| str(bytes_or_buffer[, encoding[, errors]]) -> str
|
| Create a new string object from the given object. If encoding or
| errors is specified, then the object must expose a data buffer
| that will be decoded using the given encoding and error handler.
| Otherwise, returns the result of object.__str__() (if defined)
| or repr(object).
| encoding defaults to sys.getdefaultencoding().
| errors defaults to 'strict'.
|
| Methods defined here:
|
| __add__(self, value, /)
| Return self+value.
|
| t i ( lf k /)
Entrée [82]:

ma_chaine = 'Bonjour tout le monde'

Entrée [83]:

print(ma_chaine.upper())

BONJOUR TOUT LE MONDE

Entrée [84]:

print(ma_chaine.lower())

bonjour tout le monde

Entrée [85]:

print(ma_chaine.capitalize())

Bonjour tout le monde

Entrée [86]:

print(ma_chaine.title())

Bonjour Tout Le Monde

Entrée [87]:

ma_chaine.center(50,'_')

Out[87]:

'______________Bonjour tout le monde_______________'

localhost:8888/notebooks/Tutoriel_Python.ipynb 14/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [88]:

ma_chaine.find('le')

Out[88]:

13

Entrée [89]:

ma_chaine.find('k')

Out[89]:

-1

Entrée [90]:

ma_ch = 'ababbbdafac'
ma_ch.replace('a','z',2) # Que les deux premiers

Out[90]:

'zbzbbbdafac'

Entrée [91]:

ch = 'Python est un langage interprété'


if 'langage' in ch:
print('Trouvé')
else:
print('Non trouvé')

Trouvé

Entrée [92]:

ch.islower()

Out[92]:

False

Entrée [93]:

ch.isupper()

Out[93]:

False

Entrée [94]:

ch.isalpha()

Out[94]:

False

On peut aussi tester .isdigit() .isdecimal() .isnumeric() .isalphanumeric()

localhost:8888/notebooks/Tutoriel_Python.ipynb 15/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

10. Fichiers
Modes d'ouvertures :

r (lecture seule)
w (écriture avec remplacement)
a (écriture avec ajout en fin de fichier)
x (lecture et écriture)
r+ (lecture, écriture dans un même fichier)

Entrée [95]:

fic = open('donnees.txt', 'r')


content = fic.read()
print(content)
fic.close()

chat
chien
lion
singe
lapin

Entrée [1]:

fic = open('donnees.txt', 'r')


line = fic.readline()
print(line)

---------------------------------------------------------------------------
FileNotFoundError Traceback (most recent call last)
<ipython-input-1-fe752d5c1404> in <module>
----> 1 fic = open('donnees.txt', 'r')
2 line = fic.readline()
3 print(line)

FileNotFoundError: [Errno 2] No such file or directory: 'donnees.txt'

Entrée [97]:

lines = fic.readlines()
print(lines)
fic.close()

['chien\n', 'lion\n', 'singe\n', 'lapin\n']

localhost:8888/notebooks/Tutoriel_Python.ipynb 16/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [98]:

with open('donnees.txt','r') as fic: # Avec with pas besoin de fermer le ficher


content = fic.read()
print(content)

chat
chien
lion
singe
lapin

Entrée [99]:

with open('donnees.txt', 'r+') as fic:


nombre = 15
fic.write(str(nombre))

11. Modularité
Entrée [100]:

import math
result = math.sqrt(1000)
result

Out[100]:

31.622776601683793

Entrée [101]:

from math import sqrt


result = sqrt(1000)
result

Out[101]:

31.622776601683793

Importer un module :

import (nom_module)

from (nom_module) import (nom_fonction)

from (nom_module) import (*)

Entrée [102]:

import player

localhost:8888/notebooks/Tutoriel_Python.ipynb 17/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [103]:

player.parler('Bassem','Salut!')

Bassem : Salut!

Entrée [104]:

player.au_revoir()

Au revoir :)!

12. Gestion des erreurs


Entrée [105]:

age_utilisateur = input('Quel âge as-tu ?')

Quel âge as-tu ?fgh

Entrée [106]:

age_utilisateur = int(age_utilisateur)

---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-106-aa5af48f00d2> in <module>
----> 1 age_utilisateur = int(age_utilisateur)

ValueError: invalid literal for int() with base 10: 'fgh'

Entrée [107]:

ages_utilisateur

---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-107-16bd0239c7f0> in <module>
----> 1 ages_utilisateur

NameError: name 'ages_utilisateur' is not defined

Entrée [108]:

2/0

---------------------------------------------------------------------------
ZeroDivisionError Traceback (most recent call last)
<ipython-input-108-e8326a161779> in <module>
----> 1 2/0

ZeroDivisionError: division by zero

localhost:8888/notebooks/Tutoriel_Python.ipynb 18/19
26/09/2020 Tutoriel_Python - Jupyter Notebook

Entrée [109]:

age_utilisateur = input('Quel âge as-tu ?')


try:
age_utilisateur = int(age_utilisateur)
print('Tu as', age_utilisateur, 'ans')
except:
print('Age indiqué est incorrect')

Quel âge as-tu ?fgh


Age indiqué est incorrect

Gérer les exceptions : try / except (+ else, finally)

Entrée [110]:

nombre1 = 150
nombre2 = input('Choisir le nombre 2 pour effectuer la division :')
try:
nombre2 = int(nombre2)
print('Resultat = {}'.format(nombre1/nombre2))
except ZeroDivisionError:
print('Vous ne pouvez pas diviser par zéro')
except ValueError:
print('Vous devez entrer un nombre')
else:
print('Bravo, vous avez noté un nombre valide !')
finally:
print('Fin du programme')

Choisir le nombre 2 pour effectuer la division :0


Vous ne pouvez pas diviser par zéro
Fin du programme

Entrée [ ]:

localhost:8888/notebooks/Tutoriel_Python.ipynb 19/19

Vous aimerez peut-être aussi