Je suis confus quant au choix des noms pour mes fonctions en Python . Parfois, les fonctions intégrées Python sont impératives telles que: printfonction et méthode de chaîne find. Parfois, ils ne sont pas tels que: lenson nom n'est pas impératif comme calculate_len, par exemple, et typene l'est pas find_type.
Je peux comprendre que printrenvoie une valeur que nous n'utilisons pas (c'est-à-dire None) et fait quelque chose (c'est-à-dire qu'il montre une chaîne à l'écran), donc son nom est impératif.
Mais lenrenvoie une valeur que nous utilisons et fait quelque chose (c'est-à-dire calculer le nombre d'éléments dans une séquence ou un mappage) et son nom n'est pas impératif . D'un autre côté, findla méthode string (as len) renvoie une valeur que nous utilisons et fait quelque chose, et son nom est impératif .
Ce qui a fait poser cette question, c'est que j'ai mis à jour un script qui crypte et décrypte la chaîne en utilisant le chiffrement César. Le critique a déclaré que:
Juste une intuition: les fonctions font des choses. Donc, un bon nom pour une fonction est un impératif: j'utiliserais à la
rotate_letterplace derotated_letter.
rotated_letterrenvoie une chaîne d'une seule lettre représentant une lettre tournée d'un nombre. Je ne sais pas ce qui est mieux, je l'ai utilisé rotated_lettercar il renvoie une valeur, comme la randintfonction dans un module aléatoire , ce n'est pas le cas generate_randint.
Donc, dans ce cas, comment dois-je nommer une fonction qui renvoie une valeur à utiliser? Dois-je rendre le nom impératif ou juste un nom . Dans d'autres cas, il est évident de savoir comment le faire, comme les fonctions booléennes , comme is_evenet is_palindromenous le faisons simplement comme une question oui / non , et aussi des fonctions qui font et renvoient simplement des valeurs non utilisées (c.-à-d. None), Comme la printméthode list sort.
len, par exemple, est mieux considéré comme une "longueur de" - vous obtenez une description au niveau méta de son argument.