IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Python, de z�ro - Un cours complet pour apprendre la programmation Python [Tutoriel]


Sujet :

Python

  1. #1
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    12 835
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par d�faut Python, de z�ro - Un cours complet pour apprendre la programmation Python
    Chers membres du club,

    J'ai le plaisir de vous pr�senter ce tutoriel :


    Cet article est un cours qui se veut complet sur l'apprentissage de la programmation Python.

    Il pr�sentera comment faire ses premiers pas en Python et comprendre sa syntaxe, comment cr�er (et ex�cuter) ses premiers scripts, son typage allant du plus simple au plus complexe.

    Il d�taillera les cha�nes, leur encodage et les diff�rentes fa�ons de les afficher. Il d�crira aussi les fonctions et leurs param�tres dans diff�rentes configurations, les it�rables, les g�n�rateurs et la syntaxe des fameuses listes de compr�hension. Puis il abordera l'objet en Python avec les classes et les m�taclasses et enfin le gestionnaire de contexte et les d�corateurs.

    Et il terminera avec quelques petits exemples vari�s.

    Il se veut complet, mais Python est vaste, donc toutes les notions pr�sent�es seront expliqu�es le plus clairement possible et g�n�ralement accompagn�es d'un exemple ou deux, mais sans s'y attarder plus que cela, laissant le lecteur d�sireux de les approfondir devoir chercher ailleurs les d�tails ou exercices qui lui manqueront, comme sur cette page d�di�e � diff�rents exercices Python.
    Bonne lecture

    Retrouvez Les meilleurs cours et tutoriels pour apprendre Python.
    Mon Tutoriel sur la programmation �Python�
    Mon Tutoriel sur la programmation �Shell�
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les diff�rentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  2. #2
    Invit�
    Invit�(e)
    Par d�faut
    C'est nuuuul, enlevez lui ses troph�es !!!

    Sacr� boulot ! Je t'en offre un de plus


  3. #3
    Membre actif
    Homme Profil pro
    Animateur Num�rique
    Inscrit en
    F�vrier 2013
    Messages
    143
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Animateur Num�rique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : F�vrier 2013
    Messages : 143
    Par d�faut
    Super boulot, tr�s complet, clair et ludique

    Il convient aussi bien aux d�butants qu'a un publique exp�riment�.

    J'ai ador� le chapitre sur les m�taclasses, bien que je ne les utilise jamais, mais �a m'a rappel� les m�tatables en Lua pour faire du pseudo OO.

    Encore bravo pour cet �norme travail.

  4. #4
    Expert confirm� Avatar de disedorgue
    Homme Profil pro
    Ing�nieur int�gration
    Inscrit en
    D�cembre 2012
    Messages
    4 349
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur int�gration
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : D�cembre 2012
    Messages : 4 349
    Par d�faut
    je ne dirais que:


  5. #5
    Membre exp�riment� Avatar de zancrows
    Homme Profil pro
    �tudiant
    Inscrit en
    D�cembre 2016
    Messages
    159
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, C�tes d'Armor (Bretagne)

    Informations professionnelles :
    Activit� : �tudiant
    Secteur : Industrie

    Informations forums :
    Inscription : D�cembre 2016
    Messages : 159
    Par d�faut
    Super tuto, je le trouve tr�s clair et synth�tique !

    J'ai not� une petite erreur dans la section "IV-8. True, False, None" (je ne sais pas si c'est le bon endroit pour remonter �a)
    Il manque une double quote ici:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    >>> "" == False
    False
    >>> "" == True
    False
    >>> bool("") == False
    True
    >>> print(ok" if not "" else "bad") # <- ici
    ok
    Je poursuis la lecture

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    12 835
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par d�faut
    Merci merci, �a fait plaisir
    Mais en fait j'attends avec inqui�tude l'avis de Wiztricks...

    Pour les m�taclasses moi non plus je ne les utilise jamais et c'est pour �a que ce chapitre a �t� l'un des plus difficiles � �crire. En fait, le plus difficile, c'est surtout de trouver des exemples le plus clairs possibles qui illustrent une notion peu utilis�e.
    Mon Tutoriel sur la programmation �Python�
    Mon Tutoriel sur la programmation �Shell�
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les diff�rentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  7. #7
    Responsable Arduino et Syst�mes Embarqu�s


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 197
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activit� : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 197
    Billets dans le blog
    47
    Par d�faut
    Un tuto de 20 pages aurait suffi, mais non il a fallu qu'il nous ponde un opus en 27 chapitres et 160 pages

    Merci Sve@r pour ce cours de r�f�rence, et respect !

  8. #8
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    12 835
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par d�faut
    Citation Envoy� par f-leb Voir le message
    Merci Sve@r pour ce cours de r�f�rence
    As-tu remarqu� la page "remerciements"en fin du tuto ? Il y a l� un site que tu aimes bien...
    Mon Tutoriel sur la programmation �Python�
    Mon Tutoriel sur la programmation �Shell�
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les diff�rentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  9. #9
    Membre Expert
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan � 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    923
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyr�n�es Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : Paysan � 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 923
    Billets dans le blog
    8
    Par d�faut
    Bonjour,
    Belle contribution! Beaucoup de boulot. Respect!

    � quand un chapitre pr�sentant Numpy et Panda?
    J'ai pu constater sur les forums beaucoup de demandes sur le sujet venant de d�butant. Aussi je me demande, si ces biblioth�ques ne sont pas syst�matiquement enseign�es aux �tudiants. ?

  10. #10
    Expert �minent
    Homme Profil pro
    Architecte technique retrait�
    Inscrit en
    Juin 2008
    Messages
    21 741
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : Architecte technique retrait�
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par d�faut
    Citation Envoy� par Sve@r Voir le message
    Mais en fait j'attends avec inqui�tude l'avis de Wiztricks...

    Je n'ai aucun avis sur les tutos!

    Ils se ressemblent, vieillissent mal et... personne ne sait (objectivement) pourquoi � un moment, on passera du temps avec celui l� plut�t qu'un autre (qu'est ce qui nous attire vers...).

    Ce qui est s�r, c'est que c'est beaucoup d'heures pass�es � �crire, relire, corriger,... arriver � mener cela a bon port m�rite des applaudissements (on f�licite l'effort "sportif").

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  11. #11
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    12 835
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par d�faut
    Citation Envoy� par Hominid� Voir le message
    � quand un chapitre pr�sentant Numpy et Panda?
    J'y ai pens� � un moment, envisageant un truc style "Python avanc� - Les librairies". Mais bon, entre ce qu'on veut faire et ce qu'on peut faire...
    Mon Tutoriel sur la programmation �Python�
    Mon Tutoriel sur la programmation �Shell�
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les diff�rentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  12. #12
    Expert confirm� Avatar de papajoker
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 323
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ni�vre (Bourgogne)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 323
    Par d�faut
    Bravo pour le travail hercul�en

    pas encore bien lu car il me faudrait au moins une semaine. Au premier regard :
    - match vraiment tr�s restrictif : c'est comme pr�senter f-string mais sans une allusion au formatage
    - G�n�rateurs, je trouve tr�s r�ducteur de ne voir que le "temporel" comme argument pour l'utiliser� Pour moi, ne consommer en m�moire qu'un �l�ment et non une liste enti�re est le premier argument
    - context manager
    pr�ambule et utilisation est en fait un seul cas particulier : les fichiers, puisque pas indiqu�, on pense que c'est la g�n�ralit�. Alors que le troisi�me chapitre est justement un peu plus global.

  13. #13
    Community Manager

    Avatar de Malick
    Homme Profil pro
    Community Manager
    Inscrit en
    Juillet 2012
    Messages
    9 308
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : S�n�gal

    Informations professionnelles :
    Activit� : Community Manager
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9 308
    Billets dans le blog
    15
    Par d�faut
    Salut,

    � Sve@r pour cet excellent cours.

    Citation Envoy� par Hominid� Voir le message
    Bonjour,
    � quand un chapitre pr�sentant Numpy et Panda?
    @Hominid� : c'est ne bonne id�e je pense. Cela vous int�resserez d'en faire ? Si oui, on pourra en discuter par MP sur le processus.

    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous �tes passionn�, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la r�daction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    R�daction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, R�daction de news, interviews et t�moignages, Organisation de d�fis, de d�bats et de sondages, Relecture technique, Mod�ration, Correction orthographique, etc..
    Vous avez d'autres propositions de contributions � nous faire ? Vous souhaitez en savoir davantage ? N'h�sitez pas � nous approcher.

  14. #14
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    12 835
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par d�faut
    Citation Envoy� par papajoker Voir le message
    - match vraiment tr�s restrictif : c'est comme pr�senter f-string mais sans une allusion au formatage
    H� oui, �a a fait partie des trucs rajout�s � la va comme je te pousse, style "oh zut l'instruction match vient d'arriver, il faut que j'en parle"...

    Citation Envoy� par papajoker Voir le message
    - G�n�rateurs, je trouve tr�s r�ducteur de ne voir que le "temporel" comme argument pour l'utiliser� Pour moi, ne consommer en m�moire qu'un �l�ment et non une liste enti�re est le premier argument
    Ben pour tout dire, la m�moire �tait mon argument au d�but, celui que je pr�sentais en cours quand j'expliquais les g�n�rateurs. Et puis un �l�ve a dit "oui, effectivement on gagne de la m�moire mais en contrepartie on appelle plusieurs fois la fonction et chaque appel engendre un co�t", argument sur lequel je n'ai pas su quoi r�pondre (probablement parce qu'il est exact ).
    Donc ensuite j'ai r�fl�chi pour trouver dans quel cas le g�n�rateur r�pondrait � un vrai besoin, besoin tellement n�cessaire que l'inconv�nient des appels multiples n'aurait plus de pertinence => et j'ai trouv� le temporel.

    Citation Envoy� par papajoker Voir le message
    - context manager
    pr�ambule et utilisation est en fait un seul cas particulier : les fichiers, puisque pas indiqu�, on pense que c'est la g�n�ralit�.
    Oui je comprends. Le souci c'est "comment expliquer une notion nouvelle". Je n'ai pas trouv� d'autre moyen que prendre un exemple en montrant comment peu � peu la notion finit par devenir n�cessaire, en montrant que telle autre fa�on de faire est possible mais pas forc�ment pratique etc. Et puis bon, le pr�ambule commence par une phrase expliquant le but du truc, puis la phrase suivante commence par "prenons un exemple" donc on voit bien que c'est un exemple ; je fais confiance au lecteur pour qu'une fois les chapitres 1 et 2 termin�s, il se dise tout seul "ah oui, et si �a marche pour un fichier, �a doit pouvoir marcher pour tout le reste"...

    Citation Envoy� par papajoker Voir le message
    Alors que le troisi�me chapitre est justement un peu plus global.
    C'�tait le but: chapitres 1 et 2: explications d�taill�es, avec un exemple d�taill�, et chapitre 3: �largissement � d'autres possibilit�s
    Mon Tutoriel sur la programmation �Python�
    Mon Tutoriel sur la programmation �Shell�
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les diff�rentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  15. #15
    Membre Expert
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan � 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    923
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyr�n�es Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : Paysan � 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 923
    Billets dans le blog
    8
    Par d�faut
    Citation Envoy� par Malick



    @Hominid� : c'est ne bonne id�e je pense.
    Au final, je ne le pense pas.
    J'ai consult� le web, j'y ai trouv� plusieurs ressources francophones sur Numpy, Panda ...
    Je pense qu'apr�s avoir suivi le tutoriel de Sve@r, un apprenant saura compl�ter sa formation par lui-m�me, s'il le souhaite.

  16. #16
    Invit�
    Invit�(e)
    Par d�faut
    Je n'ai aucun avis sur les tutos!

    Ils se ressemblent, vieillissent mal et..
    Oh ben je crois que l'avis est plut�t pr�sent !

  17. #17
    Membre Expert
    Avatar de Pyramidev
    Homme Profil pro
    Tech Lead
    Inscrit en
    Avril 2016
    Messages
    1 513
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : Tech Lead

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 513
    Par d�faut
    Citation Envoy� par Sve@r Voir le message
    Chers membres du club,

    J'ai le plaisir de vous pr�senter ce tutoriel :

    Bravo pour l'effort. Je n'aurais pas eu la motivation d'�crire un tuto aussi long.

    Citation Envoy� par papajoker Voir le message
    - G�n�rateurs, je trouve tr�s r�ducteur de ne voir que le "temporel" comme argument pour l'utiliser� Pour moi, ne consommer en m�moire qu'un �l�ment et non une liste enti�re est le premier argument
    Citation Envoy� par Sve@r Voir le message
    Ben pour tout dire, la m�moire �tait mon argument au d�but, celui que je pr�sentais en cours quand j'expliquais les g�n�rateurs. Et puis un �l�ve a dit "oui, effectivement on gagne de la m�moire mais en contrepartie on appelle plusieurs fois la fonction et chaque appel engendre un co�t", argument sur lequel je n'ai pas su quoi r�pondre (probablement parce qu'il est exact ).
    Donc ensuite j'ai r�fl�chi pour trouver dans quel cas le g�n�rateur r�pondrait � un vrai besoin, besoin tellement n�cessaire que l'inconv�nient des appels multiples n'aurait plus de pertinence => et j'ai trouv� le temporel.
    Du coup, je viens de lire le chapitre du tuto sur les g�n�rateurs.

    Le probl�me de consommation de m�moire peut s'illustrer ainsi : par exemple, admettons que l'on �crive un code Python qui, pour un dossier donn�, parcourt tous les fichiers qu'il contient r�cursivement et, pour chaque fichier, lit toutes les lignes, par exemple pour chercher des occurrences d'une cha�ne (comme grep). Il y a plusieurs mani�res diff�rentes de coder cela. Mais, si on code une fonction qui retourne un it�rable de lignes et si le dossier est tr�s gros, il vaut mieux que la fonction retourne un g�n�rateur au lieu de charger d'un coup en m�moire le contenu r�cursif de tout le dossier.

    Ce qui est bien avec cet exemple, c'est qu'on peut encha�ner sur le temporel ainsi : comme avec grep, on peut commencer � afficher des r�sultats de recherche au fur et � mesure sans avoir fini de parcourir tous les fichiers.

  18. #18
    Expert confirm� Avatar de disedorgue
    Homme Profil pro
    Ing�nieur int�gration
    Inscrit en
    D�cembre 2012
    Messages
    4 349
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur int�gration
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : D�cembre 2012
    Messages : 4 349
    Par d�faut
    Il ne faut pas oublier aussi que l'on peut fournir une valeur en entr�e sur un retour de yield, et donc dans l'absolu, avoir un g�n�rateur qui peut changer de comportement en cours de route.
    Ce qui peut permettre par exemple de s�parer la logique fonctionnelle de la logique m�tier. Par exemple le g�n�rateur nous retourne une ligne selon un certain pattern qui fonctionnellement n'est pas faux mais dans la logique m�tier serait faux ce qui permettrait de garder un code pas trop complexe et voir de s'interrompre avant la fin suite � un trop grand nombre d'erreur m�tier.

    C'est un exemple parmi d'autres.

    Pour moi, dire que cela charge moins la m�moire, c'est r�ducteur car rien n'emp�che d'avoir par exemple un g�n�rateur qui a lu l'int�gralit� d'un fichier et stock� en m�moire et ensuite de le fournir au demandeur ligne par ligne.

  19. #19
    Membre Expert
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2003
    Messages
    1 603
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : F�vrier 2003
    Messages : 1 603
    Par d�faut
    H� b� ! �norme boulot abattu !

    Bravo !

  20. #20
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 910
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 910
    Par d�faut
    Salut,

    Merci et f�licitations pour ce nouveau tuto.

Discussions similaires

  1. R�ponses: 19
    Dernier message: 10/05/2023, 18h25
  2. Cours complet pour apprendre la programmation en langage R
    Par Community Management dans le forum R
    R�ponses: 0
    Dernier message: 29/03/2018, 09h21
  3. Cours complet pour apprendre la programmation en langage D
    Par Community Management dans le forum D
    R�ponses: 0
    Dernier message: 25/03/2018, 20h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo