Contenu du cours

  1. 1
    • La structure de la formation

  2. 2
    • Les fichiers source de la formation

  3. 3
    • Les environnements de développement - Introduction

    • Sublime Text

    • Visual Studio Code

    • PyCharm

    • Jupyter Notebook

    • Anaconda

  4. 4
    • Mise en place de l'environnement de travail

    • À LIRE ABSOLUMENT : Les erreurs à éviter.

    • La version de Python à installer

    • Editeurs en ligne pour commencer à programmer tout de suite

  5. 5
    • Installation de Python pour Windows

    • Erreurs courantes avec la commande python sur Windows

    • Installation de Visual Studio Code pour Windows

    • Installation de Git Bash pour Windows

    • IMPORTANT: Quelques précautions avec Git Bash

    • Si Git Bash ne fonctionne pas bien : L'alternative cmder

    • Installation et utilisation de Cmder avec Python

  6. 6
    • Installation de Python 3.7 sur Mac OS

    • Installation de Visual Studio Code sur Mac OS

    • Visual Studio Code sur Mac OS < 10.9

  7. 7
    • Installation de Python 3.7 sur Linux

    • Commandes Linux pour installer Python 3.7

    • Installation de Visual Studio Code sur Linux

  8. 8
    • Introduction à la première partie de la formation

  9. 9
    • Le terminal avec Windows

    • Le terminal avec Mac OS et Linux

    • Afficher du texte avec la fonction print

    • La fonction print

    • Quand doit-on utiliser la fonction print?

    • Un peu de culture générale

  10. 10
    • Le terminal - Introduction

    • Le terminal, à quoi ça sert?

    • La commande ls

    • La commande pwd

    • La commande cd

    • Le dossier ~

    • La commande clear

    • La commande mkdir

    • La commande rm

    • La commande touch

    • Les commandes du terminal

    • Entrainez-vous !

    • FICHE RÉCAPITULATIVE

  11. 11
    • Visual Studio code - Introduction

    • WINDOWS: Vérifier l'intégration de Visual Studio Code

    • Mac OS : Vérifier l'intégration de Visual Studio Code

    • LINUX: Vérifier l'intégration de Visual Studio Code

    • Ouvrir Visual Studio Code depuis le terminal

    • Configurer Visual Studio Code pour Python

    • Exécuter un script Python depuis Visual Studio Code

    • MAC ET LINUX: Exécuter un script depuis le terminal

    • WINDOWS: Exécuter un script depuis le terminal

    • WINDOWS: Intégrer Git Bash dans Visual Studio Code

  12. 12
    • Introduction à la section

    • Les differents types natifs

    • Les chaînes de caractères

    • Les chaînes de caractères

    • Les nombres

    • Les booléens

    • Les booléens

    • Les constructeurs de types natifs

    • Les types natifs

    • Exercice de code1: Créez des objets natifs

    • Créez des objets natifs - Solution

    • Exercice de code2: Corrigez les erreurs des chaînes de caractères

    • Corriger les erreurs des chaînes de caractères - Solution

    • Exercice de code3: Corriger les variables

    • Corriger les variables - Solution

    • FICHE RÉCAPITULATIVE

  13. 13
    • Introduction à la section

    • Petite précision sur l'éditeur utilisé dans les prochaines parties

    • A quoi sert une variable?

    • Des objets et des noms

    • Quizz- Les variables - Introduction

    • Affectations simples, parallèles et multiples

    • Pourquoi vous n'avez pas le même résultat que moi.

    • Singleton et 'small integer caching'

    • Règles et conventions de nommage

    • Précision sur les noms de variables

    • Quizz- Les variables

    • Exercice de code4: Déclarer les variables

    • Déclarer des variables - Solution

    • Exercice de code5: Erreur dans la déclaration d'une variable

    • Erreur dans la déclaration d'une variable - Solution

    • Exercice de code 6: Les variables-Exercice de syntaxe

    • Les variables - Exercice de syntaxe - Solution

    • Trouvez la valeur d'une variable

    • Trouvez la valeur d'une variable - Solution

    • FICHE RÉCAPITULATIVE

  14. 14
    • Python_ Un langage dynamique et fortement typé

    • Les fonctions de conversion (int et str)

    • Afficher le type d'une variable

    • Manipuler les objets natifs

    • Exercice de code 8: Convertir une variable d'un type à un autre

    • Concaténer des variables dans une chaîne de caractères

    • Concaténation

  15. 15
    • Introduction à la section

    • Récupérer la saisie de l'utilisateur avec input

    • Exercice- Récupérer information de l'utilisateur

    • FICHE RECAPITULATIVE

  16. 16
    • Décomposer le problème en français

    • Utiliser la documentation

  17. 17
    • Introduction à la section

    • Changer la casse

    • Remplacer des éléments

    • Séparer et joindre

    • Remplir de zéros

    • Les méthodes 'is'

    • Compter les occurences

    • Trouver une chaîne

    • Chercher au début et à la fin

    • Liste des méthodes de chaînes de caractères

    • Compter le nombre de phrases

    • Ordonner une chaîne de caractères

  18. 18
    • Introduction à la section

    • Les opérateurs mathématiques

    • Les opérateurs mathématiques avancés avec le module math

    • Les opérateurs d'assignation

    • Les opérateurs de comparaison

    • La difference entre is et ==

  19. 19
    • Introduction à la section

    • La concaténation et les f-string

    • FICHE RECAPITULATIVE

  20. 20
    • Résumé

    • Structure conditionnelle

    • Les opérateurs ternaires

    • Les opérateurs logiques

    • Les erreurs courantes à éviter

    • Exercice- opérateurs logiques

  21. 21
    • Introduction à la section

    • Les erreurs de syntaxe

    • Les mots réservés par Python

    • Les erreurs d'exécution

    • Les erreurs sémantiques

  22. 22
    • IMPORTANT- Quelques erreurs à éviter

    • Le module random

    • Exercice- module random

    • Le module os

    • Aller chercher de l'aide avec les fonctions dir et help

    • Les objets callable

  23. 23
    • Introduction à la section

    • Les listes

    • Les tuples

    • Ajouter et enlever des éléments à une liste

    • Récupérer un élément dans une liste

    • Les slices

    • D'autres méthodes sur les listes

    • D'autres méthodes pour enlever des éléments

    • Joindre les éléments d'une liste

    • Créer une liste à partir d'une chaîne de caractères

    • Les opérateurs d'appartenance

    • Vérifier qu'un élément est dans une liste

    • Les listes imbriquées

    • FICHE RECAPITULATIVE

  24. 24
    • La différence entre les méthodes et les fonctions

    • Les objets muables et immuables

    • Quelques fonctions supplémentaires

    • Vérifier la validité d'un mot de passe

  25. 25
    • La boucle for

    • La boucle while

    • Les instructions continue et break

    • La boucle for / else

    • Les compréhensions de liste

    • Les fonctions Any et All

  26. 26
    • Afficher dix utilisateurs

    • Afficher un mot à l'envers

    • Fixer l'erreur dans la boucle

    • Afficher la table de multiplication d'un nombre

    • Sortir d'une boucle infinie

    • Sortir d'une boucle while avec input

    • Remplacer des boucles par des compréhensions de liste

    • Récupérer seulement les nombres pairs

    • conversion euro-dollars

    • Suite de nombres

    • Conversion nombre de secondes

    • Combinaison de listes

  27. 27
    • La calculatrice

  28. 28
    • La liste des courses

  29. 29
    • Le nombre mystère

  30. 30
    • Le jeu de rôle

  31. 31
    • Résumé et Bilan de compétence - Valide tes acquis

  32. 32
    • Introduction à la section

    • Les chemins de dossiers sur votre système d'exploitation

    • Les chemins sur Windows

    • Lire le contenu d'un fichier

    • Notes pour Windows

    • Ecrire à l'intérieur d'un fichier

    • Les fichiers JSON

    • Ajouter des données dans un fichier JSON

    • Erreurs courantes à éviter

    • Erreurs courantes avec les fichiers JSON

  33. 33
    • LA LISTE DES COURSES AVEC SAUVEGARDE

  34. 34
    • FICHE RECAPITULATIVE

  35. 35
    • Les dictionnaires - FICHE RECAPITULATIVE

    • Les dictionnaires

  36. 36
    • Le trieur de fichiers

  37. 37
    • Le créateur de dossiers

  38. 38
    • Organiser les données

  39. 39
    • Chercher un mot dans les fichiers

    • Script de tri à bulles

    • Editeur pour lire et écrire dans un fichier 'texte'

    • Triplement des espaces

    • Chiffres réels en nombres entiers

    • Comparaison de fichiers

    • Construire un fichier C à partir de deux autres fichiers

    • Enregistrer les coordonnées des membres d'un club

    • Ajouter des informations dans le fichier du club

    • Recherche de lignes particulières dans un fichier texte

  40. 40
    • Les exceptions et la programmation LBYL et EAFP

    • Gérer les erreurs avec les exceptions

    • Gérer les erreurs à l'ouverture d'un fichier

  41. 41
    • FICHE RECAPITULATIVE

  42. 42
    • Recréer la méthode isdigit

    • Recréer la méthode join

    • Recréer la méthode replace

    • Créer une fonction pour récupérer la valeur d'un dictionnaire

    • Re-créer la méthode split

    • Fonction changeCar

    • La fonction eleMax

  43. 43
    • Introduction à la section

    • A quoi servent les annotations de type?

    • La syntaxe

    • Configurer les annotations de type sur Visual Studio code

    • Utiliser mypy pour vérifier notre code

  44. 44
    • Les modules_ Définition et syntaxe

    • Créer notre propre module

    • La variable __name__

    • Le Python Path

    • WINDOWS - Modifier le Python Path

    • MAC OS - Modifier le Python Path

    • LINUX - Modifier le Python Path

    • Actualiser un module Python

  45. 45
    • Qu'est-ce qu'un Package_

    • Le fichier __init__

  46. 46
    • Les docstrings

    • Présentation des principaux formats de Docstring

    • Configurer Visual Studio code pour les docstrings

  47. 47
    • Le module logging

    • Configurer le logger

    • Ecrire dans un fichier de log

  48. 48
    • Introduction à la section

    • Installation et premiers pas

    • Générer des données uniques

    • Quelques "Providers" intéressants

    • Générer des données spécifiques

  49. 49
    • Qu'est-ce qu'un environnement virtuel?

    • Créer un environnement virtuel Python

    • Activer et désactiver un environnement virtuel

    • WINDOWS - Activer et désactiver un environnement virtuel

    • Visual Studio code et les environnements virtuels

  50. 50
    • Introduction au projet

    • Le gestionnaire d'utilisateurs

  51. 51
    • FICHE RECAPITULATIVE

  52. 52
    • Introduction à la programmation orientée objet

    • Créer une classe

    • Créer des instances

    • Attributs de classe et attributs d'instance

    • Initialiser une instance

    • La signification de 'self'

    • Récapitulatif de la terminologie

    • La vérité sur les fonctions de conversion

    • Les dataclasses

    • Créez une classe Voiture

  53. 53
    • Refactoring de la liste de courses avec la POO

  54. 54
    • Les méthodes de classe

    • Les méthodes statiques

    • La méthode __str__

    • L'héritage

    • La fonction super

    • La surcharge

    • Le polymorphisme

  55. 55
    • Les bases de données et le stockage d'informations

    • Stocker des données dans un fichier JSON

    • Introduction à SQLite

    • Créer un tableau

    • Ajouter des données

    • Visualiser une base de données dans Visual Studio Code

    • Récupérer des données

    • Mettre à jour des données

    • Supprimer des données

    • Ouvrir une base de données avec DB Browser

  56. 56
    • LE GESTIONNAIRE D'UTILISATEURS

  57. 57
    • Résumé et Bilan de compétence - Valide tes acquis

    • Quiz pratique de fin de deuxième partie

  58. 58
    • Introduction à la section

    • Aperçu des prochaines sessions

    • La bibliothèque Typer

    • Installer Typer avec pip

    • Un premier programme

    • Ajouter un argument

    • Ajouter une option

    • Demander la confirmation

    • Les commandes

    • Modifier le style du texte

    • Rajouter une barre de progression

    • Projet concret d'une application

  59. 59
    • Présentation du projet

    • Création de la structure du projet

    • Création de l'environnement virtuel

    • Installation des packages

    • Erreurs possibles sur Linux et Mac OS Big Sur

    • Création de la fenêtre principale

    • Création de l'interface

    • Définir des valeurs par défaut

    • Connecter les widgets aux méthodes

    • Convertir la devise et afficher le résultat

    • Gérer les erreurs

    • Changer le style de l'interface

  60. 60
    • API : comprendre l'essentiel

    • GIT- SAUVERGARDER ET VERSIONNER SON CODE EN LIGNE

    • LES ETAPES A FAIRE

  61. 61
    • Introduction à la section

    • WINDOWS_ Créer un exécutable avec auto-py-to-exe

    • MAC OS_ Créer un exécutable avec auto-py-to-exe

    • Directement avec PyInstaller

    • Que faire en cas d'erreur(s)

  62. 62
    • Introduction à la section

    • Les tests unitaires avec Python

    • Pourquoi doit-on tester son code_

    • Où doit-on placer les tests_

    • unittest

    • doctest

    • pytest

    • La couverture de code avec coverage

    • Analyser notre code et le _Test Driven Development_(TDD)

    • Créer notre premier test unitaire

    • Exécuter les tests unitaires

    • Compléter les tests

    • Afficher la couverture de tests

    • Installer pytest

    • Lancer les tests de unittest avec pytest

    • Eviter la répétition avec les fixtures

  63. 63
    • [PROJET #13: LE GESTIONNAIRE D'UTILISATEURS(CRM)]

  64. 64
    • Les versions utilisées

    • L'importance de la documentation

    • Présentation de l'application

    • Créer un environnement virtuel

    • Installer Django avec PIP

    • Création du fichier requirements.txt

    • Créer un projet Django

    • La structure d'un projet Django

    • Lancer le serveur de développpement

    • FICHE RÉCAPITULATIVE

  65. 65
    • Créer un chemin d'URL

    • Le paramètre append_slash

    • Créer une vue pour l'URL

    • Créer un template

    • Insérer des données dans un template

    • FICHE RÉCAPITULATIVE

  66. 66
    • Créer une application dans le projet

    • Définir les URLS de l'application

    • Ajouter la vue principale du blog

    • Ajouter la vue pour les articles

    • FICHE RÉCAPITULATIVE

  67. 67
    • Ajouter un fichier css

    • Mettre en forme le site

    • FICHE RÉCAPITULATIVE

  68. 68
    • Introduction à la section

    • Projet d'exercice

    • Création du projet Django

    • Les differents types de bases de données

    • Qu'est-ce qu'un ORM ?

    • Installation de TablePlus

    • Créer les migrations et visualiser la BDD Sqlite

    • FICHE RÉCAPITULATIVE

  69. 69
    • Introduction aux modèles

    • Les champs de modèle

    • Créer notre premier modèle

    • Créer les migrations

    • Appliquer les migrations

    • Résumé de makemigrations et migrate

    • Le paramètre blank

    • La différence entre blank et null

    • FICHE RECAPITULATIVE

  70. 70
    • Introduction aux requêtes (queryset)

    • Créer un objet à partir d'un modèle

    • Récupérer et modifier des objets

    • Supprimer un objet

    • Filtrer les objets

    • Ajouter des propriétés à un modèle

    • Surcharger la méthode save

    • FICHE RÉCAPITULATIVE

  71. 71
    • Introduction aux relations

    • Création d'un super user

    • créer un modèle pour les catégories

    • Les relations plusieurs-à-un (Foreign Key)

    • Les requêtes avec une relation plusieurs-a-un

    • Les relations plusieurs-à-plusieurs(ManyToMany)

    • Les requêtes avec une relation plusieurs-à-plusieurs

    • Manipuler les objets liés

    • Accéder aux relations inverses

    • Récapitulatif des relations

    • FICHE RECAPITULATIVE

  72. 72
    • Introduction à la section

    • L'objet HttpResponse

    • Retourner un JsonResponse

    • Retourner une erreur 404

    • Retourner un fichier HTML avec render

    • Rediriger avec redirect

    • La fonction get_object_or_404

    • Restreindre l'accès aux utilisateurs connectés

    • Restreindre l'accès avec une condition

    • FICHE RECAPITULATIVE

  73. 73
    • Introduction à la section

    • Les variables

    • Les structures conditionnelles

    • Les boucles

    • les URL

    • La balise with

    • Quand doit-on utiliser les filtres_

    • Enlever les tags HTML avec striptags

    • L'échappement HTML automatique

    • Etendre un template avec extends

    • La balise block

    • FICHE RECAPITULATIVE

  74. 74
    • Introduction à la section

    • Changer l'URL par défaut

    • Ajouter un modèle

    • Indiquer les champs à afficher

    • Changer l'ordre de tri des instances

    • Rendre un champ éditable

    • Voir un modèle sur le site

    • Filtrer les instances

    • Options de filtres avancées

    • Limiter le nombre d'instances

    • Afficher une colonne personnalisée

    • Personnaliser l'interface d'administration

    • FICHE RECAPITULATIVE

  75. 75
    • Introduction aux formulaires

    • Pourquoi utiliser des formulaires Django

    • Créer un formulaire

    • Afficher un formulaire

    • Les widgets

    • Récupérer les données dans la vue

    • Validation personnalisée d'un champ

    • Lier un formulaire à un modèle

    • Modifier les champs

    • Sauvegarder un formulaire

    • Etablir des données initiales

    • Eviter de re-soumettre le formulaire

    • FICHE RECAPITULATIVE

  76. 76
    • Pourquoi utiliser les Class-Based Views_

    • Notre première vue fondée sur une classe

    • Personnaliser le TemplateView

    • La vue de base et les mixins

    • L'utilité des CBV pour les opérations CRUD

    • La classe ListView

    • La classe DetailView

    • La classe CreateView

    • La classe UpdateView

    • La classe DeleteView

    • FICHE RECAPITULATIVE

  77. 77
    • Introduction à la section

    • Installer PostgreSQL sur Windows

    • Installer PostgreSQL sur MAC OS

    • Installer PostgreSQL sur Linux

    • Installer la bibliothèque psycopg2

    • Créer un utilisateur

    • Créer une base de données

    • Configurer PostgreSQL dans notre projet Django

    • Tester la connexion à notre base de données

  78. 78
    • Présentation du projet

    • Création du projet

    • Création de la base de données

    • [DEVELOPPEMENT DU BLOG]

    • Création de l'application du blog

    • Création du modèle pour les articles

    • Appliquer les migrations dans la base de données

    • Ajouter le modèle des articles dans l'interface d'administration

    • Créer le template HTML de base

    • Créer la vue d'accueil du blog

    • Masquer les articles non publiés

    • Créer la vue pour ajouter un article

    • Créer la vue pour modifier un article

    • Créer la vue pour afficher un article

    • Créer la vue pour supprimer un article

    • Ajouter des liens entre les vues

    • [MISE EN FORME DU SITE]

    • Ajouter un fichier CSS statique

    • Installer Django livereload

    • Mise en forme de la page d'accueil

    • Mise en forme des articles

    • Mise en forme des formulaires

    • Mise en forme des boutons

    • [LES FICHIERS STATIQUES]

    • La différence entre développement et production

    • Le fonctionnement des fichiers statiques

    • Le champ ImageField

    • Les variables MEDIA_URL et MEDIA_ROOT

    • Ajouter les médias dans le fichier d'URLS

  79. 79
    • Introduction à la section

    • Présentation de Python Anywhere

    • Création de l'application sur PythonAnywhere

    • Configurer les variables d'environnement

    • Préparer les fichiers du projet Django

    • Créer le fichier requirements.txt

    • Créer un dépôt Git

    • Cloner le dépôt sur PythonAnywhere

    • Créer l'environnement virtuel sur PythonAnywhere

    • Créer le fichier .env sur PythonAnywhere

    • Modifier le fichier wsgi

    • Créer la base de données

    • Collecter les fichiers statiques

  80. 80
    • ​Introduction et sources

    • Installation de Pillow

    • Vérification de l'installation

    • Ouverture du projet dans PyCharm

    • Les bases : Introduction

    • Mise en place de l'environnement virtuel

    • Créer, ouvrir et afficher une image

    • Sauvegarder et convertir une image

    • Un peu de lecture sur la couche alpha

    • Retourner des images

    • Quelques exercices suppléméntaires

    • Solutions aux exercices

    • La retouche d'images : Introduction

    • Créer une fonction pour comparer des images

    • Créer une fonction pour comparer des images_ explications détaillées

    • Changer la saturation, le contraste, la netteté et la luminosité

    • Convertir une image en noir et blanc

    • Créer un effet _filtre Instagram_

    • Créer un effet sepia

    • Optimiser vos images : Introduction

    • Redimensionner une image

    • Réduire le poids d'une image

    • Identifier vos images : Introduction

    • Ajouter un logo à une image

    • Ajouter un filigrane sur une image

    • Télécharger des polices d'écritures supplémentaires

    • Les métadonnées : Introduction

    • Lire les métadonnées d'une image

    • Lecture des métadonnées : méthode alternative

    • Modifier les métadonnées

    • Trier des images en fonction des données GPS

    • Trier les images par pays

    • Idées d'exercices supplémentaires

  81. 81
    • C'est quoi la blockchain?

    • Comprendre le Hash SHA256

    • Etape 1

    • Etape 2

    • Etape 3

    • Etape 4

    • Etape 5

    • Etape 6

    • Etape 7

    • Etape 8

    • Etape 9

    • Etape 10

    • Etape 11

    • Exercice

    • Etape 12

  82. 82
    • Whats is bitcoin?

    • Transactions and UTXO's

    • Where do transaction fees come from?

    • How wallets work ?

    • Signatures : Private & Public Keys

    • Step 1

    • Step 2

    • Step 3

    • Step 4

    • Step 5

    • Step 6

    • Step 7

    • Step 8

    • Step 9

    • Step10

    • Full code

  83. 83
    • What is Ethereum?

    • What is a smart contract?

    • Decentralized Applications (Dapps)

    • Ethereum Virtual Machine & Gas

    • Decentralized Autonomous Organizations (DAOs)

    • Initial Coin Offerings (ICO)

    • ICO Case Study

    • Blockchain and Web 3.0

    • Step 1

    • Step 2

    • Step 3

    • Step 4

    • Step 5

    • Step 6

    • Step 7

    • Step 8

    • Full code

  84. 84
    • PCAP-SAMPLE-TEST-1

    • Python Test Exam I