Syntaxes avancées (car ramassées) en Python

Il y a mille manières d’exprimer ce qu’on désire en langage naturel, et il en va de même avec un langage de programmation.
Certaines fomulations peuvent être clairement plus laconiques que d’autres, et d’aucuns considèrent que c’est démontrer sa maîtrise du langage que de les maîtriser. Toutefois, si jouer à ce petit jeu de la syntaxe ramassée permet d’économiser sur l’écriture, il ne permet certainement pas d’économiser sur la lecture, du moins tant que celui qui doit lire n’a pas appris à écrire pareillement.
Pour aider dans cet apprentissage, cet article évolutif se propose de recenser les syntaxes ramassées qu’un développeur peut rencontrer en lisant du code en Python (version 3.6.4), à condition qu’elles présentent une véritable utilité.
Pour l’heure, on trouvera des explications suivantes… :
L’article sera enrichi au fil des découvertes réalisées au fil de lectures. Ces mises à jour seront signalées.
Mise à jour du 08/03/2018 :
  • rappel de la typologie (et corrections !) ;
  • extraire une plage d’éléments d’une séquence (slicing).
Continuer la lecture de « Syntaxes avancées (car ramassées) en Python »
Syntaxes avancées (car ramassées) en Python

Paramètres et décorateurs de fonction en Python

Python permet d’écrire des fonctions comportant de nombreux paramètres qui peuvent avoir des mines des plus patibulaire, surtout si elles sont par ailleurs assorties de décorateurs. Par exemple :
def g (h):
	def k (prompt, *words, **complements):
		if complements['computer'] == 'Atari':
			complements['computer'] = 'Amiga'
		h (prompt, *words, **complements)
	return k
@g
def f (prompt, *words, **complements):
	for key, value in complements.items ():
		print (prompt + ':', ' '.join (words), value)
f ('HAL speaking', 'I', 'love', 'the', computer='Atari', drink='coffee')
HAL speaking: I love the Amiga
HAL speaking: I love the coffee
Il est important de ne pas se laisser abuser par cette apparente complexité. Maîtriser les différentes catégories de paramètres qu’il est possible d’utiliser est essentiel pour exploiter le potentiel de l’écriture de fonctions en Python au quotidien. Quant aux décorateurs, il est sans doute bien moins fréquent d’y avoir recours, mais comme ils peuvent se rencontrer, il est bon de savoir commment ils fonctionnent.
Continuer la lecture de « Paramètres et décorateurs de fonction en Python »
Paramètres et décorateurs de fonction en Python