Rien de spécial
Le blog de Régis

Un vrai plaisir de développer en Python

J’avais tendance à sortir des débats sur le choix du langage de programmation en me disant qu’il s’agit principalement d’un phénomène de mode, et qu’après tout, c’est l’algorithme implémenté qui compte. J’avais tort.

Car le langage est plus ou moins lisible, et cela impacte directement la qualilté de l’implémentation. Quand le code est pourri par la lourdeur de la création de variables ou de la syntaxe des structures de contrôle (boucles for et exécution conditionnelle if), c’est tout l’algorithme qui en souffre.

Il ne faut pas négliger non plus le plaisir de programmer. Un langage sympa donne envie de faire des choses.

Et en ce moment, j’ai retrouvé un vrai plaisir avec python. Par exemple, si j’ai une hashmap mot -> nombre (ça peut être un compteur d’occurence de mots) et récupérer uniquement les nombres pairs, je ne peux plus supporter la lourdeur de JavaTM

Map<String, Integer> dictionary = new HashMap<String, Integer>();
dictionary.put("not", new Integer(1));
dictionary.put("hello", new Integer(2));
dictionary.put("world", new Integer(41));
dictionary.put("AGAIN", new Integer(42));
Map<String, Integer> dictionaryEven=new HashMap<String, Integer>();
for (Map.Entry<String, Integer> entry : map.entrySet()) { 
    if (entry.getValue().intValue() % 2 == 0) {
        dictionaryEven.add(entry.getKey(), entry.getValue());
    }

Et je préfère nettement ce que l’on peut écrire en Python:

dictionary={« not »:1, « hello »:2, « world »:41, « again »:42}
  
dictionaryEven=dict((k,v) for k,v in dictionary.items() if v%2 == 0)