Une introduction à Python3

Temps de lecture : 6 minutes


Un premier programme

Voici un premier exemple de programme :

1
2
3
for i in [0, 1, 2]:
    print("valeur :", i)
print("Fin")

L’affichage après exécution est :

1
2
3
4
valeur : 0
valeur : 1
valeur : 2
Fin

Quelques bases rapides en Python

Utilisation en mode interactif

Exemple de première utilisation de IPython :

1
2
>>> 3 * 4
12

Les parties qui débutent par »> correspondent aux entrées.

Premiers calculs

Testez les calculs suivants :

1
2
3
4
>>> 4 + 5
>>> 3 - 7 # les espaces sont optionnels
>>> 5 + 2 * 3 # la priorité des opérations mathématiques est-elle respectée ?
>>> (6 + 3) * 2

Pour calculer une puissance, on utilise **.

1
>>> 5**2

L’opérateur /

L’opérateur / ne donne pas les mêmes résultats suivant les versions de Python. En Python 2, il réalise par défaut une division euclidienne, aussi appelée division entière (c’est-à-dire une division dont le résultat est un entier). En Python 3, il réalise une division décimale standard comme on la trouve sur une calculatrice. Si on utilise Python 2.7, on peut obtenir le même comportement qu’en Python 3 grâce à l’instruction from __future__ import division . Dans un script, il faut la placer au tout début afin d’importer cette fonctionnalité du module __future__.

Exemple

1
2
>>> 7 / 2
3.5

Pour réaliser une division entière, il faut utiliser // :

1
2
>>> 7 // 2
3

L’opérateur %

On peut noter l’existence de l’opérateur % (appelé opérateur modulo). Cet opérateur fournit le reste de la division entière d’un nombre par un autre. Par exemple :

1
2
3
4
>>> 7 % 2
1
>>> 6 % 2
0

Affectation

1
2
3
4
5
6
>>> a = 2
>>> a
2
>>> b = a + 3
>>> b
5

La première ligne contient l’instruction a = 2. Pour comprendre cette instruction, il faut imaginer que les informations sont stockées dans des boîtes au sein de la mémoire de l’ordinateur. Pour manipuler les informations, on donne des noms à ces boîtes. Ici on crée une boîte appelée a et on lui affecte la valeur 2. Par la suite, on parlera de la variable a, puisque a peut contenir des valeurs variables. Autrement dit, l’instruction a = 2 est une instruction d’affection qui a pour effet de mettre la valeur 2 dans la variable a.

Affichage - la fonction print()

Pour afficher, on utilise la fonction print().

1
2
3
4
5
>>> print("bonjour")
bonjour
>>> a = 5
>>> print(a)
5

Il est possible de réaliser plusieurs affichages à la suite. Pour cela, on sépare les éléments par des virgules.

1
2
3
>>> a = 5
>>> print("a vaut", a)
a vaut 5

En Python 2, on ne mettait pas de parenthèses.

Python 2 : print “a vaut”, a Python 3 : print(“a vaut”, a)

Pour ne pas aller à la ligne et continuer sur la même ligne lors du prochain print :

Python 2 : print “a vaut”, a, Python 3 : print(“a vaut”, a, end=” ”)

Il est possible avec Python 2.7 d’utiliser la syntaxe de Python 3 pour la fonction print grâce à l’instruction from __future__ import print_function .

La fonction range()

Si vous avez besoin de créer sur une liste d’entiers, vous pouvez utiliser la fonction range(). Elle génère une suite arithmétique. En Python 3, il est toutefois nécessaire de convertir son résultat en liste grâce à la fonction list(). Par exemple :

1
2
>>> list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Le nombre de fin qui lui est passé n’est jamais dans la liste générée. Par exemple, range(10) génère 10 valeurs, exactement les indices des éléments d’une séquence de longueur 10. Il est possible de faire commencer l’intervalle à un autre nombre, ou de spécifier un incrément différent (même négatif) :

1
2
3
4
5
6
>>> list(range(5, 10))
[5, 6, 7, 8, 9]
>>> list(range(0, 10, 3))
[0, 3, 6, 9]
>>> list(range(-10, -100, -30))
[-10, -40, -70]

De manière générale, on a :

1
range(valeur_initiale, borne_de_fin, pas)

Le pas peut être positif ou négatif. La valeur de la borne de fin (maximale ou minimale) n’est jamais atteinte.

Ici, nous créons une liste contenant les entiers pairs allant de 10 à 20.

1
2
3
4
5
6
7
>>> a = list(range(1,10,2))
>>> a
[1, 3, 5, 7, 9]
>>> a[0]
1
>>> a[2]
5

Pour accéder à un élément d’une liste, on indique entre crochets [] l’indice de l’élément. En Python, l’indice du premier élément d’une liste est 0 (ceci est à distinguer d’autres langages).

La fonction len()

La fonction len() renvoie le nombre d’éléments. Par exemple :

1
2
3
4
5
>>> a = list(range(7,10))
>>> a
[7, 8, 9]
>>> len(a)
3

Lecture d’informations au clavier - la fonction input()

1
x = int(input("Donnez un entier : "))

Par défaut, la fonction input() renvoie une chaîne de caractères. Il faut donc utiliser la fonction int() qui permet d’obtenir un entier.

Un petit exemple de programme qui

1
2
3
4
5
6
7
8
9
n = 3
print("Je vais vous demander", n, "nombres")
for i in range(n):
    x = int(input("Donnez un nombre : "))
    if x > 0:
        print(x, "est positif")
    else:
        print(x, "est négatif ou nul")
print("Fin")

Pour faire une répétition : l’instruction for

1
2
for i in range(n):
    bloc d'instructions

Pour les boucles avancé veuillez vous referer à l’article: la récursivité en python

Pour faire un test : l’instruction if

1
2
3
4
if x > 0:
    print(x, "est positif")
else:
    print(x, "est négatif ou nul")

Règles générales d’écriture

Les identificateurs

Un identificateur est une suite de caractères servant à désigner les différentes entitées manipulées par un programme : variables, fonctions, classes…

En Python, un identificateur est formé de lettres ou de chiffres. Il ne contient pas d’espace. Le premier caractère doit obligatoirement être une lettre. Il peut contenir le caractère “_” (underscore, en français “souligné”). Il est sensible à la casse (distinction entre majuscule et minuscule).

Les mots-clés

Les mots réservés par le langage Python (if, for, etc.) ne peuvent pas être utilisés comme identificateurs. andasassertbreakclasscontinuedefdelelifelseexceptFalsefinallyforfromglobalifimportinislambdaNonenonlocalnotorpassraisereturnTruetrywhilewithyield

Les commentaires

Les commentaires usuels:

# Ceci est un commentaire

Les commentaires en fin de ligne:

a = 2 # Ceci est un commentaire

comments powered by Disqus

Articles Similaires

Ubuntu 24.04 LTS - Une version qui fait débat entre déception et enthousiasme

Ubuntu 24.04 LTS, “Noble Numbat”, a récemment été déployée, apportant son lot de nouveautés et de changements. Cette version suscite à la fois de l’enthousiasme et de la déception au sein de la communauté des utilisateurs et des développeurs. Déception et colère face à la gestion des paquets DEB Plusieurs utilisateur d’Ubuntu ont exprimé leur déception et colère face à la décision de Canonical, la société mère d’ Ubuntu, de favoriser les paquets Snap au détriment des paquets DEB.

Lire la Suite

Le concours de beauté Miss AI : un cauchemar dystopique ou le futur de la beauté ?

Dans un monde où la technologie et la beauté fusionnent, le concours de beauté Miss AI fait son apparition. Ce concours, organisé par The World AI Creator Awards, récompense les créateurs d’images et d’influenceurs générés par intelligence artificielle (IA). Mais qu’est-ce que cela signifie pour les standards de beauté et les femmes ? Le concours Miss AI est ouvert aux créateurs d’images et d’influenceurs générés par IA qui souhaitent montrer leur charme et leur compétence technique.

Lire la Suite

Le gouvernement du Salvador prend un coup dur : les hackers divulguent le code source et les accès VPN du portefeuille bitcoin national Chivo !

Le programme bitcoin du gouvernement du Salvador, Chivo, a été victime d’une série d’attaques informatiques ces derniers jours. Les hackers ont déjà divulgué les données personnelles de plus de 5 millions de Salvadoriens. Maintenant, les mêmes pirates informatiques ont publié des extraits du code source et des informations d’accès VPN du portefeuille bitcoin national Chivo sur un forum de hacking en ligne, CiberInteligenciaSV. Ceci est un coup dur pour El Salvador, qui lutte pour être un pionnier dans l’adoption du bitcoin.

Lire la Suite