def count_words(str):
return len(str.split(' '))
message = "The show must go on!"
print("Nombre de mots dans '%s' : %d" % (message, count_words(message)))
La fonction count_words() prend en paramètre une chaîne de caractères. Elle utilise la méthode split() accessibles aux chaînes (qui sont des objets !). Celle-ci fonctionne comme split() en JavaScript : elle sépare la chaîne selon le séparateur passé en paramètre, et renvoie une "liste" (l'équivalent des tableaux).
Ensuite la fonction len() compte le nombre d'éléments dans la liste.
Remarque ensuite ce qu'on met en arguments de print(). La partie entre guillemets ressemble à ce qu'on pourrait trouver en C ou en Java : %s et %d sont des "emplacements" pour des variables (chaîne et entier respectivement). Par contre, la syntaxe de la suite diffère : les valeurs à insérer dans les emplacements sont situées entre parenthèses, suite au caractère %.
Pour terminer, le plus important à retenir de cet exemple... Voici comment on aurait écrit count_words() en JS :
function count_words(str) {
return str.split(' ').length;
}