Skip to Content
Fluent Python, 2ème édition
book

Fluent Python, 2ème édition

by Luciano Ramalho
November 2024
Intermediate to advanced
1014 pages
27h 21m
French
O'Reilly Media, Inc.
Book available
Content preview from Fluent Python, 2ème édition

Chapitre 7. Les fonctions en tant qu'objets de première classe

Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com

Je n'ai jamais considéré Python comme étant fortement influencé par les langages fonctionnels, quoi qu'en disent ou en pensent les gens. J'étais beaucoup plus familier avec les langages impératifs tels que C et Algol 68 et même si j'avais fait des fonctions des objets de première classe, je ne considérais pas Python comme un langage de programmation fonctionnel.

Guido van Rossum, Python BDFL1

Fonctions en Python sont des objets de première classe. Les chercheurs en langage de programmation définissent un "objet de première classe" comme une entité de programme qui peut être.. :

  • Créé au moment de l'exécution

  • Attribué à une variable ou à un élément d'une structure de données.

  • Passé en tant qu'argument à une fonction

  • Renvoyé comme résultat d'une fonction

Les entiers, les chaînes de caractères et les dictionnaires sont d'autres exemples d'objets de première classe en Python - rien d'extraordinaire ici. Le fait que les fonctions soient des objets de première classe est une caractéristique essentielle des langages fonctionnels, tels que Clojure, Elixir et Haskell. Cependant, les fonctions de première classe sont si utiles qu'elles ont été adoptées par des langages populaires tels que JavaScript, Go et Java (depuis le JDK 8), dont aucun ne prétend être un "langage fonctionnel".

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Fluent Python, 2nd Edition

Fluent Python, 2nd Edition

Luciano Ramalho

Publisher Resources

ISBN: 9798341618954Supplemental Content