Accueil » Tutoriels » Python

Python

Python est un langage de programmation puissant et facile à apprendre. Il dispose de structures de données de haut niveau et d’une approche de la programmation orientée objet simple mais efficace. Parce que sa syntaxe est élégante, que son typage est dynamique et qu’il est interprété, Python est un langage idéal pour l’écriture de scripts et le développement rapide d’applications dans de nombreux domaines et sur de nombreuses plateformes.

Apprendre le langage de programmation python

Compilation Python | Création de site internet

Vous avez décidé d’apprendre le Python et je ne peux que vous en féliciter. J’essayerai d’anticiper vos questions et de ne laisser personne en arrière. Dans ce chapitre, je vais d’abord vous expliquer ce qu’est un langage de programmation. Nous verrons ensuite brièvement l’histoire de Python, an que vous sachiez au moins d’où vient ce langage! Ce chapitre est théorique ...

Lire la suite...

PYTHON TD N°6

Compilation Python | Création de site internet

Énoncé: soit nn dans N∗N∗. Écrire une fonction calculant (∑k=1nk)2−∑k=1nk2(∑k=1nk)2−∑k=1nk2. Remarque: l’énoncé original du Project Euler se limite à n=100n=100. Le résultat est alors 2516415025164150.   Première solutionBien sûr, ça n’est pas très intéressant car (∑k=1nk)2=n2(n+1)24(∑k=1nk)2=n2(n+1)24 et ∑k=1nk2=n(n+1)(2n+1)6∑k=1nk2=n(n+1)(2n+1)6. On doit calculer S(n)=n2(n+1)24−n(n+1)(2n+1)6=112(n−1)n(n+1)(3n+2)S(n)=n2(n+1)24−n(n+1)(2n+1)6=112(n−1)n(n+1)(3n+2). 1 2 def euler006a(N):     return N*(N*N–1)*(3*N+2)//12 Deuxième solutionAdmettons qu’on ne veuille pas utiliser les formules donnant (∑k=1nk)2(∑k=1nk)2 et ...

Lire la suite...

PYTHON TD N°5

Compilation Python | Création de site internet

Énoncé: Soit NN un entier strictement positif. Quel est le plus petit entier strictement positif et divisible par tous les entiers de 11 à NN? Remarque: l’énoncé original du Project Euler » se limite à N=20N=20. Le résultat est alors 232792560232792560. ———————————————————————————————————————————————————————————————— Il s’agit bien sûr de calculer ici πN=ppcm(1,…,N)πN=ppcm(1,…,N). Première solutionOn part de π1=1π1=1 et on utilise les relations πn=n∨πn−1=nπn−1n∧πn−1πn=n∨πn−1=nπn−1n∧πn−1La ...

Lire la suite...

PYTHON TD N°4

Compilation Python | Création de site internet

Un entier naturel (écrit en base 1010) est un palindrome s’il se lit à l’identique de gauche à droite et de droite à gauche. L’entier 9009=91×999009=91×99 est le plus grand palindrome à s’écrire comme le produit de deux entiers à deux chiffres. Énoncé: trouver le plus grand palindrome égal au produit de deux entiers à trois chiffres (réponse: 906609=993×913906609=993×913). —————————————————————————————————————————————————————————————— ...

Lire la suite...

PYTHON TD N°3

Compilation Python | Création de site internet

Soit NN dans NN, avec N≥2N≥2. Écrire une fonction donnant le plus grand facteur premier de NN. Remarque: l’énoncé original du Project Euler » se limite à N=600851475143N=600851475143. Le résultat est alors 68576857. Première solutionCette première solution en fait peut-être un peu trop, puisqu’elle forme la liste (ordonnée suivant les valeurs croissantes) de tous les diviseurs premiers pp de NN (avec ...

Lire la suite...

PYTHON TD N°2

Compilation Python | Création de site internet

Chaque terme de la suite de Fibonacci est obtenu en ajoutant les deux termes précédents. Les premiers termes sont: F0=0,F1=1,F2=1,F3=2,F4=3,F5=5,F6=8,F7=13,F8=21,⋯F0=0,F1=1,F2=1,F3=2,F4=3,F5=5,F6=8,F7=13,F8=21,⋯ Énoncé: écrire une fonction qui renvoie la somme des FnFn qui sont pairs et strictement inférieurs à un entier naturel NN donné. Remarque: l’énoncé original du Project Euler » se limite à N=4×106N=4×106. Le résultat est alors 46137324613732. Première solution C’est ...

Lire la suite...

PYTHON TD N°1

Compilation Python | Création de site internet

Énoncé: soit NN dans NN. Écrire une fonction donnant la somme des entiers de [1,N[[1,N[ qui sont divisibles par 3 ou 5. Remarque: l’énoncé original du « Project Euler » se limite à N=1000N=1000. Le résultat est alors 233168. Première solution Python 1 2 3 4 5 6 def euler001a(N):     s = 0                               # initialise la somme à 0     for n in ...

Lire la suite...

Les boucles for et while Python TUTO11

Compilation Python | Création de site internet

Une boucle ( ou loop ) vous permet de répéter à l’infini des instructions selon vos besoins. Le boucle while En anglais “while” signifie “Tant que”. Pour créer une boucle, il faut donc utiliser ce mot clé suivi d’une indication qui dit quand la boucle s’arrête. Un exemple sera plus parlant: On désire écrire 100 fois cette phrase: “Je ne ...

Lire la suite...

Créer lire et écrire dans un fichier en python TUTO20

Compilation Python | Création de site internet

Une manière de stocker des données de manière pérenne est de les stocker dans des fichiers. Editer un fichier Pour éditer un fichier en python on utilise la fonction open. Cette fonction prend en premier paramètre le chemin du fichier (relatif ou absolu) et en second paramètre le type d’ouverture Chemin relatif / chemin absolu Un chemin relatif en informatique ...

Lire la suite...

Les expressions régulières en python TUTO19

Compilation Python | Création de site internet

Les expressions régulières sont utilisées dans quasiment tous les langages. C’est un outil très puissant qui permet de vérifier si le contenu d’une variable a la forme de ce que l’on attend. Par exemple si on récupère un numéro de téléphone, on s’attend à ce que la variable soit composée de nombres et d’espaces (ou de tiret) mais rien de ...

Lire la suite...