1. Livres et vidéos
  2. Python - Apprenez à développer des projets ludiques (couvre la spécialité NSI des classes de lycée)

Python Apprenez à développer des projets ludiques (couvre la spécialité NSI des classes de lycée)

  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne
  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte pendant 1 an
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7

Présentation

Vous rêvez de découvrir la programmation tout en réalisant des projets ludiques, vous souhaitez connaître les astuces du langage Python devenu incontournable cette décennie, alors ce livre, rédigé par un expert, vous permettra d'atteindre ces objectifs.

Tout d'abord, vous êtes guidé pour choisir et mettre en place votre environnement Python sur PC et sur Mac. Après cela, l'auteur vous propose de vous enseigner de façon ludique et pédagogique ce langage accessible à tous et très puissant grâce à une centaine d'exercices corrigés de difficulté progressive. Ainsi, trois chapitres permettent d'assimiler les bases de la programmation : variables, types, conditions, boucles, liste et fonctions et d'anticiper les pièges à éviter.

Puis l'auteur vous propose de tester la facilité d'approche de Python et la créativité offerte par ses librairies en dépassant vos limites grâce à quarante projets guidés. Leur niveau de difficulté indiqué par des ★ vous permet de faire évoluer rapidement vos compétences. Un chapitre dédié à la spécialité Numérique et Sciences Informatiques des classes de lycée propose des cours complets et des projets en adéquation avec le programme officiel 2019 du Ministère de l'Education Nationale.

Dans les deux derniers chapitres, vous pourrez aller plus loin dans la mise en pratique de vos apprentissages avec la création de plusieurs jeux d'arcade avec Pygame et dans la découverte d'algorithmes d'Intelligence Artificielle orientés images et jeu de stratégie. Les codes sources complets des projets sont téléchargeables sur le site www.editions-eni.fr.



Quizinclus dans
la version en ligne !
  • Testez vos connaissances à l'issue de chaque chapitre
  • Validez vos acquis

Table des matières

  • Avant-propos
    • 1. Pourquoi s’intéresser à l’informatique ?
    • 2. Pourquoi le langage Python ?
    • 3. Mon style de pédagogie
    • 4. À qui s’adresse le livre ?
    • 5. Organisation du livre
    • 6. Pour conclure
  • Installer l'environnement Python
    • 1. Introduction
      • 1.1 Que doit-on installer ?
      • 1.2 Quid d'Anaconda ?
      • 1.3 Pour les OS Mac et Linux
    • 2. Installer Python sous Windows 10
      • 2.1 Diagnostic
      • 2.2 Installation
    • 3. Installer Python sous OS Mac
      • 3.1 Diagnostic
      • 3.2 Installation
    • 4. Installer les librairies annexes
      • 4.1 Installation sous Windows 10
      • 4.2 Installation sous OS Mac
  • Les environnements de développement
    • 1. Introduction
    • 2. Python Tutor
      • 2.1 Historique
      • 2.2 Présentation
    • 3. IDLE : un environnement simple
      • 3.1 Lancer IDLE sous Windows 10
      • 3.2 Lancer IDLE sous Mac
      • 3.3 Premiers pas sous IDLE
    • 4. Pyzo : un environnement épuré et complet
      • 4.1 Installer Pyzo sous Windows 10
      • 4.2 Installer Pyzo sous Mac
      • 4.3 Configurer l'interface de Pyzo
    • 5. Visual Studio Code
      • 5.1 Installer Visual Studio Code sous Windows 10
      • 5.2 Installer Visual Studio Code sous Mac
      • 5.3 Configurer Visual Studio Code
      • 5.4 Configurer les outils de débogage
    • 6. D'autres environnements de développement ?
  • Structure du langage Python
    • 1. Introduction
    • 2. Les variables
      • 2.1 Usage
      • 2.2 Nommage
      • 2.3 Créer des variables !
      • 2.4 Affectation
    • 3. Les types des variables
      • 3.1 Quand utiliser un type entier ?
      • 3.2 Les opérations entre types différents
      • 3.3 Convertir un type en un autre
    • 4. Les opérations sur les chaînes de caractères
      • 4.1 Le standard Unicode
      • 4.2 Concaténer deux chaînes
      • 4.3 Connaître la longueur d'une chaîne
      • 4.4 Accéder à un caractère et à une sous-chaîne
      • 4.5 Transformer une chaîne en majuscules/mininuscules
      • 4.6 Rechercher et remplacer une chaîne
      • 4.7 Afficher avec la fonction print()
      • 4.8 Formater la sortie
    • 5. Les conditions
      • 5.1 Les conditions simples
      • 5.2 Les conditions avec tests multiples
      • 5.3 L'inversion
      • 5.4 La syntaxe des tests
    • 6. Les fonctions natives
      • 6.1 Les fonctions natives de conversion
      • 6.2 Les fonctions natives mathématiques
      • 6.3 La fonction native input pour les entrées-clavier
      • 6.4 Les fonctions natives avancées
    • 7. La boucle for avec indice
    • 8. La structure lexicale d'un langage
    • 9. Les messages d'erreur
      • 9.1 SyntaxError : invalid syntax
      • 9.2 Variable inconnue
      • 9.3 Les erreurs d'indentation
      • 9.4 Les erreurs de parenthésage
      • 9.5 L'oubli du range
      • 9.6 Les erreurs non signalées
    • 10. Exercices d'application
      • 10.1 Série de calculs
      • 10.2 Série de calculs imbriqués
      • 10.3 Série de calculs imbriqués avec deux variables
      • 10.4 Expressions conditionnelles
      • 10.5 Types et conversions de type
      • 10.6 Calculs avec les fonctions mathématiques natives
      • 10.7 Chaînes de caractères
      • 10.8 Boucle for
      • 10.9 Boucle for combinée avec une condition
    • 11. Exercices d'entraînement
      • 11.1 Afficher un mot à l'envers
      • 11.2 Calculer la valeur du polynôme 3x² + 5x + 1
      • 11.3 Additionner les n premiers entiers
      • 11.4 L'infiniment petit
      • 11.5 Compter les nombres à deux chiffres ayant le chiffre 7
      • 11.6 Compter les consonnes dans un mot
      • 11.7 Encoder et décrypter un nom
      • 11.8 Afficher les balises d'une page HTML
      • 11.9 Afficher le calendrier du mois
      • 11.10 Statistiques avec pile ou face
      • 11.11 Corrections des exercices
    • 12. Projets
      • 12.1 Le jeu du pendu
      • 12.2 Le jeu Motus
  • Les boucles, listes et entrées-sorties
    • 1. Introduction
    • 2. L'imbrication
      • 2.1 La notion de blocs d'imbrication
      • 2.2 Imbriquer des conditions
      • 2.3 Imbriquer des boucles et des conditions
    • 3. Les listes
      • 3.1 Créer une liste
      • 3.2 Lire et modifier une liste
      • 3.3 Fusionner des listes
      • 3.4 Insérer et supprimer un élément
      • 3.5 Extraire une sous-liste
      • 3.6 Tester la présence et le nombre d'occurrences d'un élément
      • 3.7 Les fonctions natives appliquées aux listes
      • 3.8 Parcourir une liste avec une boucle for
      • 3.9 Copier une liste
    • 4. La boucle while et les entrées-sorties fichier
      • 4.1 La boucle while
      • 4.2 Ne pas remplacer une boucle for par une boucle while
      • 4.3 Lire et écrire dans un fichier
    • 5. Les listes et chaînes de caractères
      • 5.1 Conversion entre listes et chaînes
      • 5.2 Fractionner une chaîne de caractères
    • 6. Les messages d'erreur
      • 6.1 Les erreurs de crochets
      • 6.2 Les erreurs d'indice
      • 6.3 On mélange les listes et les nombres
    • 7. Les trucs en plus
      • 7.1 Les paramètres optionnels de la fonction print
      • 7.2 L'opérateur modulo %
      • 7.3 L'opérateur puissance
      • 7.4 Les opérateurs +=, -= et *=
    • 8. Exercices d’application
      • 8.1 Boucles for imbriquées I
      • 8.2 Boucles for imbriquées II
      • 8.3 Boucles for imbriquées III
      • 8.4 Parcours de liste I
      • 8.5 Parcours de liste II
      • 8.6 Manipulation de liste I
      • 8.7 Manipulation de liste II
      • 8.8 Extraire une sous-liste
      • 8.9 Opérations sur les listes
      • 8.10 Boucle while
    • 9. Exercices d’entraînement
      • 9.1 Calculer la somme des éléments d'une liste
      • 9.2 Répartir les nombres pairs et impairs dans deux listes
      • 9.3 Compter les occurrences de chaque nombre dans une liste
      • 9.4 Faire apparaître une texture de grillage
      • 9.5 Calculer les racines d'un polynôme du second degré
      • 9.6 Trouver tous les nombres premiers jusqu'à 100
      • 9.7 Vérifier si une liste est triée
      • 9.8 Décaler une liste
      • 9.9 Construire un tableau de comparaison
      • 9.10 Fusionner deux listes triées
      • 9.11 Corrections des exercices
    • 10. Projets
      • 10.1 Résoudre un cryptarithme
      • 10.2 Calculer le nombre Pi
      • 10.3 Créer un robot de conversation
      • 10.4 Faire de l'ASCII art
  • Les fonctions
    • 1. Introduction
    • 2 Association entre variables
      • 2.1 Le mécanisme des associations
      • 2.2 Les listes de listes
      • 2.3 Copier une liste de listes
    • 3 Intérêt des fonctions
      • 3.1 Rôles et définition
      • 3.2 Les paramètres nommés
      • 3.3 Les valeurs par défaut des paramètres
      • 3.4 Passer et retourner un argument de type entier
      • 3.5 Passer et retourner un argument de type liste
    • 4 Gestion des variables
      • 4.1 Les variables globales
      • 4.2 Les variables locales
      • 4.3 Conflit entre variables locales et variables globales
      • 4.4 Passer et retourner des tuples
    • 5 Exercices d'application
      • 5.1 Copies et modifications de listes
      • 2.2 Création de liste de listes I
      • 5.3 Création de liste de listes II
      • 5.4 Création de liste de listes III
      • 5.5 Paramètres par défaut
      • 5.6 Impact sur les variables globales
      • 5.7 Fonction
      • 5.8 Appel d'une fonction depuis une fonction
      • 5.9 Fonction récursive
    • 6 Préparation aux exercices
      • 6.1 Une fenêtre d'affichage graphique
    • 7 Exercices d'entraînement
      • 7.1 Calculer le minimum d'une liste
      • 7.2 Dessiner en mode texte
      • 7.3 Dessiner une maison sous la neige - Étape 1
      • 7.4 Dessiner une maison sous la neige - Étape 2
      • 7.5 Dessiner une fractale de Sierpinski - Étape 1
      • 7.6 Dessiner une fractale de Sierpinski - Étape 2
      • 7.7 Tester si un point appartient à un rectangle
      • 7.8 Le jeu de la vie - Étape 1
      • 7.9 Le jeu de la vie - Étape 2
      • 7.10 Placement optimal d'antennes-relais - Étape 1
      • 7.11 Placement optimal d'antennes-relais - Étape 2
      • 7.12 Tir aux ballons - Étape 1
      • 7.13 Tir aux ballons - Étape 2
      • 7.14 Calculer la durée de remboursement d'un prêt
      • 7.15 Corrections
    • 8. Projets
      • 8.1 Le jeu du morpion - Étape 1
      • 8.2 Le jeu du morpion - Étape 2
      • 8.3 Le jeu du morpion - Étape 3
      • 8.4 Créer un labyrinthe - Étape 1
      • 8.5 Créer un labyrinthe - Étape 2
      • 8.6 Générer une grille de loto - Étape 1
      • 8.7 Générer une grille de loto - Étape 2
      • 8.8 Le jeu de la bataille navale - Étape 1
      • 8.9 Le jeu de la bataille navale - Étape 2
  • Le programme du lycée
    • 1. Le programme officiel de spécialité ISN
    • 2. L'interaction homme-machine
      • 2.1 Le nerf de la guerre : les IHM
      • 2.2 Créer la fenêtre principale
      • 2.3 La boucle d'évènements mainloop()
      • 2.4 Créer un bouton
      • 2.5 Lier des composants à des évènements
      • 2.6 Créer un label
      • 2.7 Créer une zone de texte
      • 2.8 Créer une case à cocher
      • 2.9 Créer des boutons radio
      • 2.10 Créer un sélecteur de valeurs
      • 2.11 Créer une liste de choix
      • 2.12 Créer une boîte de sélection
      • 2.13 Créer une zone de dessin
      • 2.14 Tracés dynamiques dans un canvas
      • 2.15 Positionner des composants
      • 2.16 Grouper des composants
      • 2.17 Panneaux redimensionnables
      • 2.18 Consulter la documentation
      • 2.19 Tirage de dés
      • 2.20 Application de dessin
      • 2.21 Gestionnaire de listes
    • 3. Les tracés scientifiques
      • 3.1 Tracer des fonctions
      • 3.2 Tracer des ensembles de points
      • 3.3 Tracer des lignes polygonales
      • 3.4 Tracer des plages de niveaux d'intensité
    • 4. La complexité des algorithmes
      • 4.1 La notion de complexité
      • 4.2 Les classes de complexité
      • 4.3 Les règles de calcul
      • 4.4 Calcul du minimum
      • 4.5 Comptage des doublons
      • 4.6 Ferme de rendu
      • 4.7 Recherche dichotomique
      • 4.8 Réduction de la complexité d'un algorithme
      • 4.9 Fusion de deux listes triées
    • 5. Les méthodes de tri
      • 5.1 Le tri par sélection
      • 5.2 Tri par insertion
      • 5.3 La preuve par invariant de boucle
      • 5.4 Le tri par insertion
      • 5.5 Le tri par fusion
      • 5.6 Le tri à bulles
      • 5.7 Le tri rapide
    • 6. Projets
      • 6.1 Apprentissage et k plus proches voisins
      • 6.2 Algorithme glouton pour le problème du sac à dos
      • 6.3 Algorithme glouton et simplification géométrique
  • Créer des jeux vidéo avec Pygame
    • 1. Introduction
      • 1.1 Contexte
      • 1.2 La structure d'un jeu interactif
      • 1.3 Séparation de la logique et de l'affichage
    • 2. Projet balle rebondissante
      • 2.1 Présentation du code
      • 2.2 Modification du jeu actuel
      • 2.3 Conseils pour compléter le code
    • 3. Le projet Pong
      • 3.1 Historique
      • 3.2 Premier lancement
      • 3.3 Présentation du code
      • 3.4 Amélioration du jeu existant
      • 3.5 Conseils pour compléter le code
    • 4. Le projet Snake
      • 4.1 Historique
      • 4.2 Premier lancement
      • 4.3 Présentation du code
      • 4.4 Contrôle du serpent
      • 4.5 Gestion des collisions
      • 4.6 Conseils pour compléter le code
      • 4.7 Rendu final
    • 5. La documentation en ligne de Pygame
      • 5.1 La liste des termes techniques
      • 5.2 L'accès à la documentation en ligne
    • 6. Le projet Gauntlet
      • 6.1 Historique
      • 6.2 Gestion du labyrinthe
      • 6.3 Gestion du personnage à l'écran
      • 6.4 Conseils pour compléter le code
    • 7. Le projet 1943
      • 7.1 Historique
      • 7.2 Premier lancement
      • 7.3 Gestion de la mer
      • 7.4 Gestion des tirs depuis un navire
      • 7.5 Gestion des tirs depuis l’avion
      • 7.6 Gestion des collisions
      • 7.7 Gestion de la flotte de navires
      • 7.8 Rendu final
    • 8. Le projet Illumination
      • 8.1 Contexte
      • 8.2 Rappels mathématiques
      • 8.3 Conseils pour compléter le code
    • 9. Le projet Tetris
      • 9.1 Historique
      • 9.2 Premier lancement
      • 9.3 Présentation du code
      • 9.4 Conseils pour compléter le code
      • 9.5 Rendu final
  • Python et l'intelligence artificielle
    • 1. Présentation
      • 1.1 Historique
      • 1.2 Principe de fonctionnement d’un neurone
      • 1.3 Neurone et apprentissage
      • 1.4 Le surapprentissage
      • 1.5 Les réseaux de neurones multicouches
    • 2. Le problème de la classification d'images
      • 2.1 Présentation
      • 2.2 Image et données
      • 2.3 Les banques d'images
      • 2.4 La fonction d'erreur
      • 2.5 Installation de l'environnement Keras
      • 2.6 Utilisation de MNIST
      • 2.7 Premier apprentissage
      • 2.8 Amélioration de l'efficacité
    • 3. L'intelligence artificielle pour les jeux
      • 3.1 Les fonctions disponibles
      • 3.2 L'idée générale
      • 3.3 Mise en place
      • 3.4 Derniers conseils
      • 3.5 Comportement irrationnel de l’IA
    • Index

Auteur

Lilian BUZEREn savoir plus

Professeur et docteur-ingénieur, Lilian BUZER enseigne la programmation et l'algorithmique à l'ESIEE-Paris en cycle préparatoire et en cycle ingénieur depuis plus de 20 ans. Animateur de plus de 150 projets d'élèves autour du jeu, du graphisme, de l'algorithmique et de l'Intelligence Artificielle, il introduit très tôt la pédagogie par projet dans ses enseignements et fait partager sa passion au travers de sa chaîne Youtube Codin'Fun.

Caractéristiques

  • Niveau Initié à Confirmé
  • Nombre de pages 622 pages
  • Parution janvier 2020
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-409-02276-0
    • EAN : 9782409022760
    • Ref. ENI : RIPYTPR
  • Niveau Initié à Confirmé
  • Parution janvier 2020
    • HTML
    • ISBN : 978-2-409-02277-7
    • EAN : 9782409022777
    • Ref. ENI : LNRIPYTPR

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (65 Ko)