miniatuur|300px|De Zen van Python-uitvoer in een terminal

De Zen van Python is een verzameling van 19 'leidende principes' voor het schrijven van computerprogramma's die van invloed zijn op het ontwerp van de programmeertaal Python. De Python-code die aan deze principes voldoet, wordt vaak 'Pythonisch' genoemd.

Softwareontwikkelaar Tim Peters schreef deze set principes en plaatste deze in 1999 op de Python-mailinglijst. Peters' lijst liet een twintigste principe open "voor Guido om in te vullen", verwijzend naar Guido van Rossum, de oorspronkelijke auteur van de Python-taal. De vacature voor een twintigste principe is nog niet ingevuld.

Peters' Zen van Python werd opgenomen als item nummer 20 in de officiële Python Enhancement Proposals van de taal en werd vrijgegeven in het publieke domein. Het is ook opgenomen als een easter egg in de Python-interpreter, waar het kan worden weergegeven door import this in te voeren.

In mei 2020 gebruikte Barry Warsaw (ontwikkelaar van GNU Mailman) het als tekst voor een liedje.

Principes miniatuur|De Zen van Python geïllustreerd De principes worden als volgt opgesomd:

Pythonisch zijn Een van de principes, "Er zou één – en bij voorkeur slechts één – voor de hand liggende manier moeten zijn om het te doen", kan worden aangeduid als de "Pythonische" manier. De officiële definitie van "Pythonisch" is:Een idee of stukje code dat nauw aansluit bij de meest voorkomende idiomen van Python, in plaats van code te implementeren met concepten die in andere talen voorkomen. Een veelgebruikte idioom in Python is bijvoorbeeld het doorlopen van alle elementen van een iterable met behulp van een for-statement. Veel andere talen hebben dit type constructie niet, dus mensen die niet bekend zijn met Python gebruiken soms een numerieke teller:for i in range(len(food)): print(food[i])In tegenstelling tot de schonere, Pythonische methode:for piece in food: print(piece)Code die moeilijk te begrijpen is of leest als een ruwe transcriptie uit een andere programmeertaal wordt onpythonisch genoemd.

In de praktijk Sinds de Zen van Python is uitgebracht, is er onderzoek gedaan naar de effectiviteit en het daadwerkelijke gebruik ervan onder ontwikkelaars. Ondanks het verschil in interpretatie tussen beginners en ervaren Python-programmeurs, tonen interviews onder 13 Python-programmeurs met verschillende vaardigheden aan dat de Zen van Python "een positieve invloed heeft op de manier waarop ontwikkelaars code schrijven en erover praten". Onderzoekers hebben deze casestudy uitgebreid om het gebruik van Python-idiomen in GitHub-repositories te onderzoeken en ontdekt dat het gebruik van "Pythonische idiomen" in de loop der tijd is toegenomen. Het schrijven van Python-code die aansluit bij de Zen van Python kan geheugen en looptijd van Python-programma's besparen. De wens om Pythonische code te schrijven heeft geleid tot het refactoren van tools om programmeurs te helpen dit doel te bereiken.

Zie ook Conventie boven configuratie Er is meer dan één manier om het te doen

Noten

Referenties

Externe links PEP20 op Python-website PEP 20 ~ De Zen van Python door Tim Peters

Categorie:Python (programmeertaal)