Et ensuite

Si vous avez lu ce livre attentivement jusqu'ici et écrit de nombreux programmes, alors vous êtes à l'aise avec Python. Vous avez sans doute créé quelques programmes Python pour faire des tentatives et tester vos capacités en Python. Si vous ne l'avez pas encore fait, vous devriez. La question à se poser maintenant est « Et ensuite ? ».

Je vous suggère de vous attaquer à ce problème :

Créer votre propre carnet d'adresses en ligne de commande avec lequel vous pourrez consulter, ajouter, modifier, détruire ou rechercher parmis vos contacts comme vos amis, les membres de votre famille et vos collègues, et retrouver des informations comme l'email et/ou le téléphone de chacun. Les détails doivent être enregistrés entre chaque utilisation du programme.

Cela est assez facile si vous pensez à tout ce que l'on a vu précédemment. Si vous voulez des indications sur la manière de faire, voici un indice: Créez une classe qui représente les informations relatives à une personne. Utilisez un dictionnaire pour enregistrer les objets d'une personne avec le nom en tant que clé. Utilisez le module pickle pour enregistrer les objets de manière persistente sur votre disque dur. Utilisez les méthodes fournies par le dictionnaire pour ajouter, détruire et modifier les personnes.

Quand vous serez capable de faire cela, vous pourrez dire que vous êtes un programmeur Python. Maintenant, tout de suite envoyez-moi un email pour me remercier pour ce super livre ;-). Cette étape est bien-sûr optionnelle, mais recommandée. Aussi, pensez à acheter une copie physique du livre pour contribuer à son développement continu.

Si vous avez trouvé ce programme facile, en voici un autre :

Implémentez la commande remplacer. Cette commande remplacera une chaîne de caractères par une autre dans la liste de fichiers fournie.

La commande remplacer peut être simple ou compliquée comme vous le voulez, de la simple substitution de chaîne de caractères à la recherche de motifs (expressions régulières).

Projets suivants

Si vous avez trouvé les programmes ci-dessus faciles à créer, consultez cette liste complète de projets et essayez d'écrire vos propres programmes: https://github.com/thekarangoel/Projects#numbers (la même liste est également disponible à l'adresse Mega liste de projets par Martyr2).

Voyez également:

Example Code

La meilleure façon d'apprendre un langage de programmation consiste à écrire et à lire beaucoup de code:

Conseils

Vidéos

Questions et réponses

Tutoriels

Discussion

Si vous êtes coincé avec un problème Python et que vous ne savez pas à qui demander, la liste de tuteurs python est le meilleur endroit pour vous renseigner.

Assurez-vous de bien faire vos devoirs en essayant d'abord de résoudre le problème vous-même et posez des questions intelligentes.

Actualités

Si vous voulez être au courant des dernières nouveautés dans le monde Python, alors suivez le blog officiel Python Planet.

Installation de bibliothèques

Il y a de très nombreuses bibliothèques open source dans le Python Package Index que vous pouvez utiliser dans vos programmes.

Pour les installer et les utiliser, utilisez pip.

Création de sites web

Apprenez à utiliser Flask pour créer vos propres sites web. Quelques resources pour démarrer :

Logiciels avec interface graphique

Supposons que vous vouliez créer votre propre programme avec une interface graphique en utilisant Python. Cela peut être fait avec une bibliothèque graphique et les bindings Python. Des bindings permettent d'écrire des programmes en Python qui utilisent des bibliothèques écrites en C, C++ ou d'autres langages.

Il existe un large choix de bibliothèques graphiques avec Python:

  • Kivy

  • PyGTK

    • Il s'agit des bindings Python pour le toolkit GTK+ toolkit qui est la fondation sur laquelle GNOME est construit. GTK+ a de nombreuses bizarreries, mais une fois que vous y êtes habitué, vous pouvez créer rapidement des applications graphiques. Le Glade Graphical Interface Designer est indispensable. La documentation est améliorable. GTK+ fonctionne bien sous Linux mais son portage sous Windows est incomplet. Vous pouvez créer des logiciels libres ou propriétaires avec GTK+. Pour commencer, lisez le tutoriel PyGTK.

  • PyQt

    • Il s'agit des bindings Python pour le toolkit Qt, qui est la fondation sur laquelle KDE est construit. Qt est très facile à utiliser et très puissant, en particulier grâce à Qt Designer et l'excellente documentation Qt. PyQt est gratuit si vous voulez créer un programme open source (sous licence GPL) et vous devez payer si vous voulez créer un programme propriétaire dont le code est fermé. A partir de Qt 4.5 vous pouvez aussi créer du code non-GPL. Pour commencer, renseignez vous sur PySide.

  • wxPython

    • Il s'agit des bindings Python pour le toolkit wxWidgets. wxPython a une courbe d'apprentissage associée. Cependant, il est très portable, et fonctionne sous Linux, Windows, Mac et même des plate-formes embarquées. Il y a de nombreux IDEs disponibles pour wxPython, dont des GUI designers comme SPE (Stani's Python Editor) et wxGlade GUI builder. Vous pouvez créer des logiciels libres ou propriétaires avec wxPython. Pour commencer, lisez le tutoriel wxPython.

Récapitulatif sur les outils sur les interfaces graphiques

Pour plus de choix, voyez la page GUI Programming sur le site officiel Python.

Il n'y a, hélas, pas d'outil graphique standard pour Python. Je vous suggère de choisir l'un des outils pré-cités en fonction de vos besoins. Le premier critère est si vous êtes d'accord pour payer pour l'un de ces outils. Le deuxième critère est si vous voulez programmer sous Windows ou sous Mac et Linux ou sous tous. Le troisième critère, si vous choisissez Linux, est votre préférence utilisateur envers KDE ou GNOME.

Pour une analyse plus détaillée, voyez la page 26 de « The Python Papers, Volume 3, Issue 1 » (PDF).

Autres implémentations

Il y a en général deux parties dans un langage de programmation - le language et le logiciel. Un langage est comment vous écrivez quelque chose. Le logiciel est ce qui fait réellement tourner notre programme.

Nous avons utilisé le logiciel CPython pour exécuter nos programmes. On l'appelle CPython parce qu'il est écrit en langage C et que c'est l'interpréteur classique de Python.

Il existe également d'autres logiciels pour exécuter vos programmes Python :

  • Jython

    • Une implémentation de Python qui tourne sur la plate-forme Java. Cela signifie que vous pouvez utiliser des classes et bibliothèques Java à partir du langage Python et vice-versa.

  • IronPython

    • Une implémentation de Python qui tourne sur la plate-forme .NET. Cela signifie que vous pouvez utiliser les bibliothèques et classes .NET à partir du langage Python et vice-versa.

  • PyPy

    • Une implémentation Python écrite en Python! C'est un projet de recherche pour améliorer l'interpréteur et le rendre plus rapide, dans ce cas l'interpréteur lui-même est écrit dans un langage dynamique (au contraire de langages statiques comme C, Java ou C# dans les trois implémentations au-dessus)

Il en existe d'autres comme CLPython, une implémentation Python écrite en Common Lisp et Brython qui est une implémentation en Javascript, ce qui veut dire que vous pourriez utiliser Python (au lieu de JavaScript) pour écrire vos logiciels pour navigateur.

Chacune des ces implémentations est utile dans le domaine dans lequel elle est spécialisée.

Programmation fonctionnelle (pour les lecteurs avancés)

Lorsque vous commencez à écrire des programmes plus volumineux, vous devez absolument en apprendre davantage sur une approche fonctionnelle de la programmation, par opposition à l'approche de la programmation basée sur les classes que nous avons apprise dans le chapitre sur la programmation orientée objet :

Récapitulatif

Vous êtes maintenant arrivé à la fin de ce livre, mais comme on dit, c'est le début de la fin!. Vous êtes maintenant un utilisateur Python avide, prêt à résoudre de nombreux problèmes avec Python. Vous pouvez commencer à automatiser des tâches sur votre ordinateur ou faire de nombreuses choses auparavant inimaginables ou écrire vos propres jeux et bien plus. Donc allez-y !