__ ___ _ _ _ ____ / / ___ / _ \__ _ _ _ ___ __| |_ _ | || ||___ \ / / / _ \ / /_)/ _` | | | / __| / _` | | | | | || |_ __) | / /__| __/ / ___/ (_| | |_| \__ \ | (_| | |_| | |__ _/ __/ \____/\___| \/ \__,_|\__, |___/ \__,_|\__,_| |_||_____| |___/
$> ls -l
-rwrw-rw- 1 db0 db0 62.1 Ko 2015-03-30 19:37 Impatient C
-rwrw-rw- 1 db0 db0 3.5 Ko 2015-03-30 19:37 Impatient SCM
-rwrw-rw- 1 db0 db0 3.0 Ko 2015-03-30 19:37 Impatient Emacs
-rwrw-rw- 1 db0 db0 2.4 Ko 2015-03-30 19:37 Impatient Man Pages
-rwrw-rw- 1 db0 db0 10.5 Ko 2015-03-30 19:37 Impatient Perl
-rwrw-rw- 1 db0 db0 17.3 Ko 2015-03-30 19:37 Impatient Python
-rwrw-rw- 1 db0 db0 13.6 Ko 2015-03-30 19:37 Impatient Shell Debutant
-rwrw-rw- 1 db0 db0 16.4 Ko 2015-03-30 19:37 Impatient Shell Script
-rwrw-rw- 1 db0 db0 3.4 Ko 2015-03-30 19:37 Impatient Shell
-rwrw-rw- 1 db0 db0 1.8 Ko 2015-03-30 19:37 Impatient Vim
Python pour les impatients
Plongez votre nez dans Python avec la pratique et sans passer par la case lecture interminable de longs tutoriaux !
Ici, pas de blabla, juste ce qu'il faut pour apprendre mais aussi pour réutiliser comme fiche de référence par la suite.
Des remarques, retours, commentaires, éléments à ajouter ou corriger, ou des erreurs ? Utilisez les commentaires en fin de page. Merci !
Environnement
- Les fichiers terminent par ".py"
- Il est possible de lancer un interpréteur avec la commande "python"
- C'est un langage interprété. Qu'est-ce que c'est ?
- C'est un langage faiblement typé. Qu'est-ce que c'est ?
- C'est un langage à multiples paradigmes : impératif, objet, fonctionnel, procédural et reflexion
- Il est possible de séparer le code en "modules". Chaque fichier correspond à un module. Un seul fichier doit contenir le main (voir "Bonnes pratiques")
- Les opérateurs habituels peuvent avoir un comportement différent selon les types qui les utilisent.
- Les règles de "scoping" habituelles sont valables en python : une variable défini dans une fonction n'existera que dans celle-ci. Ce n'est pas le cas pour tous les scopes.
Syntaxe et Sémantique
- Les noms de variables et de fonctions sont sensibles à la casse. "a" est différent de "A".
- Il n'y a pas de ";" en fin de lignes. On marque la fin d'une ligne... par un retour à la ligne.
- Les blocs sémantiques (ou "scopes") sont définis par l'indentation avec des espaces ou des tabulations (en C, ils le sont grâce aux accolades { }).
- L'indentation doit être logique d'une ligne à l'autre. Si une ligne est indenté avec 3 espaces et la suivante avec 4 sans sous bloc (
if statement:
par exemple), c'est une erreur de syntaxe. - Un langage basé sur l'indentation, ça peut paraître étrange, mais c'est logique, bien fait, bien géré par la plupart des IDE et on s'y fait très vite.
- Les commentaires commencent par des "#"
- Opérateurs : + - / // * += -= ++ -- Qu'est-ce que c'est ?
- Comparaisons : ==, !=, <, <=, >, >=, or (= || en C), and (= && en C), Qu'est-ce que c'est ?
- Définir une variable :
a = 5
- Définir une fonction :
def addition(a, b, print):
result = a + b
if print:
print 'The result is:', str(result)
return result
- Appeler une fonction :
addition(2, 3, true)
- "Si"
if a == '*':
doeverything()
elif a == '-':
donothing()
else:
dosomething(a)
- While :
while i < len(a):
print a[i]
i += 3
- For :
words = ['cat', 'window', 'defenestrate']
for w in words:
print w, len(w)
- Inclure un module :
import sys
- Utiliser une variable ou une fonction provenant d'un autre module :
- Fichier
hello.py
def say(name): print 'Hello', name
- Fichier
main.py
import hello hello.say('Alice');
- Fichier
- Il peut y avoir plusieurs fonctions portant le même noms mais dans des modules (fichiers) différents.
- Utiliser une fonction ou une variable provenant d'un autre module sans avoir à spécifier le nom du module (cette pratique est peu recommandé) :
from hello import say
say('Kim');
- Voir le module
str
pour les informations sur la syntaxe des strings - En python, on utilise et manipule des listes et non des tableaux. Voir le module
list
pour plus d'informations - Le type "tuple" existe également : Qu'est-ce que c'est ?
Modules
Sys
sys.arg
contient le nom du script et les arguments passés en ligne de commandesys.exit
est une fonction pour quitter qui prend en paramètre le code de retour du programme. Qu'est-ce que c'est ?