
Bonjour et bienvenue, c'est mon message dans cette première courte vidéo pour faire connaissance et vous présenter les grandes lignes du cours.
Vous êtes venus exprès pour cela, mais avez vous vraiment réfléchi à ce pourquoi vous voulez apprendre à programmer ? Et ce que cela veut dire ?
Posons-nous la question ensemble !
Dans cette partie je vais vous expliquer pourquoi vous avez fait le bon choix en décidant de vous mettre à Python
Comment installer Python sur Windows
Comment installer Python sur Mac OS X
Comment installer Python sur GNU/Linux
Pour vérifier que tout marche bien, je vous propose de lancer l'interpréteur Python dans un terminal et de rentrer quelques commandes.
Première étape dans notre projet de création d'un jeu fermier.
Rappellons brièvement les règles du jeu, telles que vous les avez trouvées dans le module précédent:
Un paysan possède au départ :
- un terrain de 100 ha.
- un stock de 1000 tonnes de blé.
Tous les ans, il plante du blé, et son terrain lui produit 2 fois ce qu'il a planté
Avec le stock de blé, il peut :
- Le conserver.
- Le planter dans la limite du terrain disponible (1 t/ha).
- Acheter plus de terrain (10 t/ha)
- Il doit aussi payer des impots (1000 tonnes)
Vous trouverez dans cette partie le codage d'une première solution, qui est aussi proposée en téléchargement.
Nous continuons avec les conditions et bien entendu en attachement le résultat de la leçon.
Les itérations au travers de l'utilisation de boucles "WHILE" et "FOR" sur 2 exemples simples.
Le résultat est toujours disponible bien entendu en téléchargement, sous la forme de 2 scripts.
Si vous n'avez jamais compris pourquoi :
et j'en passe, et si en plus cela ne vous fait pas rire du tout, alors cette partie va vous ouvrir tout un pan de la culture hacker avec la récursivité.
Le problème
Calculer une factorielle, c'est-à-dire une fonction telle que :
N! = N x (N-1)!
et
0! = 1
La solution en images dans cette lecture.
Nous avons mis en place précédement l'algorithme qui permet de simuler la vie d'une année de notre ferme.
- Semer
- Récolter
- Payer les taxes
Maintenant que nous savons faire des boucles, enchainons les années en demandant à chaque étape la quantité à semer et si nous souhaitons acquerir de nouveaux terrains. Cela nous permettra de mesurer notre capacité à gérer cette ferme sur le long terme et la faire fructifier.
En résumé, voici l'algorithme du programme complet :
- Afficher le statut
- demander combien planter
- simuler le passage d'une année, donc moissonner
- demander de combien agrandir la ferme
Et recommencer jusqu'à épuisement du stock, ou du joueur...
Dans un premier temps, nous allons faire tourner le jeu sans interactivité pour mettre au point les conditions initiales.
Pas de code à télécharger pour une fois, il faudra attendre la prochaine lecture pour cela.
Nous ajoutons les interactions avec le joueur, semence et achat de terrain et notre projet est terminé.
La dernière mise au point qui pourrait être faite concerne la jouabilité. Elle peut être améliorée en affinant les conditions initiales parce qu'actuellement il est tout de même un peu trop facile de perdre...
Ma solution est proposée en téléchargement.
Un élément spécifique de Python et qui s'utilise de manière pythonesque est la liste.
C'est un "objet itérable", c'est à dire un objet que l'on va pouvoir facilement utiliser en itération, dans des boucles. L'idée est que lorsqu'on veut faire un traitement sur des données, on les collecte tout d'abord dans une liste et ensuite on peut les travailler de façon systèmatique et automatique.
Mieux que la liste, le dictionnaire.
Pace que l'on a besoin quelquefois de référencer des valeurs par une autre valeur, le dictionnaire nous apporte la même souplesse que la liste, sur des données plus complexes ou plus hétérogènes.
Le traitement des exceptions permet de faire des programmes qui "ne plantent" pas, ou plus précisement, qui sont capable de gérer les erreurs. Indispensable pour développer sérieusement !
Pour interagir avec le reste du système et pouvoir réaliser la plupart des tâches, nos programmes Python vont devoir lire et écrire des fichiers.
Voici comment faire, avec 2 scripts d'exemples à télécharger, le premier montre comment lire et écrire, le deuxième est un peu plus complet puisqu'il montre comment parcourir les dossiers à la recherche d'un fichier particulier.
Python possède une bibliothèque standard largement fournie en modules, ce permet de faire beaucoup de choses sans avoir rien à ajouter. Nous avons déjà survolé rapidement le module os, dans cette partie nous allons voir comment manipuler les modules, ainsi que l'utilisation du module de fonctions mathématiques math.
Ce qui fait sa force, c'est aussi que si on ne trouve pas ce qu'on cherche dans la bilbiothèque standard, il y a certainement une bibliothèque additionnelle dans laquelle on le trouvera. Votre moteur de recherche favori devrait vous aider à trouver votre bonheur.
On peut aussi créer ses propres bibliothèque pour gérer ses fonctions ou classes les plus utilisées ou à partager entre programmes, projets ou autres.
Un peu de théorie avant de se replonger dans le code.
Objet, classe, méthode, instance, cela vous dit quelque chose ?
Difficile de faire un cours complet de Programmation Orientée Objet (POO) en quelques minutes mais mettons nous au moins d'accord sur les basiques et le vocabulaire.
L'heure de la classe a sonné !
Nous allons donc coder nos objets avec classe...
Vous cherchez un cours pour vous orienter dans une nouvelle carrière du numérique ?
Vous êtes déjà développeur et vous souhaitez apprendre le langage Python dont tout le monde parle ?
Vous êtes intéressé par la Data Science et vous avez vous que Python était incontournable pour cela ?
Ce cours est fait pour vous, c'est une initiation à la programmation avec le langage Python qui vous entrainera petit à petit jusqu'à une réelle expertise sur ce langage.
Il s'adresse à des débutants, il n'est pas nécessaire de connaitre un autre langage de programmation mais bien sur cela peut vous aider.
Vous découvrirez le langage Python, depuis les fonctions les plus simples jusqu'à des aspects plus avancés, comme la programmation orienté objet (POO).
Le cours est constitué de courtes vidéos, après quelques principes de base et l'installation des outils, nous verrons point par point comment coder en Python. Les scripts développés en cours sont tous fournis en téléchargement et plusieurs mini-projets de développement permettront de faire une synthèse des compétences acquises.
Si vous voulez faire évoluer votre carrière, découvrir un langage de programmation simple mais aux possibilités (presque) infinies ou simplement utiliser Python pour vos projets personnels et automatiser un certain nombre de tâches fastidieuses, ce cours est fait pour vous !