Dans mon livre de tutoriel, l'auteur formule ce programme comme indiqué dans le code n ° 2. Alors que mon intuitif me dit d'écrire le programme comme indiqué dans le code n ° 1. Les deux programmes obtiennent le travail pour moi, mais y a-t-il une différence entre ces deux codes? S'il y a, quel chemin va mieux, à votre avis?
#1
total = 0
count = 0
while (True):
inp = input('Enter a number: ')
if inp == 'done':
break
else:
value = float(inp)
total = total + value
count = count + 1
average = total / count
print('Average:', average)
#end of 1
#2
total = 0
count = 0
while (True):
inp = input('Enter a number: ')
if inp == 'done': break
value = float(inp)
total = total + value
count = count + 1
average = total / count
print('Average:', average)
#end of 2
3 Réponses :
Je pense que votre chemin est plus lisible, mais l'onglet supplémentaire de l'instruction IF ainsi que la déclaration d'autre n'est pas nécessaire. Je préfère la première option en raison de la lisibilité p>
Il n'y a aucune différence dans la façon dont le code est exécuté, il pourrait parfois être plus agréable d'utiliser une ligne une ligne si la déclaration. Une voie n'est pas objectivement meilleure, cela revient au contexte et à la préférence personnelle. Alors choisissez votre façon de préférer. Si vous avez déjà du doute sur la syntaxe Python et son style, consultez l'officiel Style Python Guide . P>
L'une des touches prend du guide de style est que la lisibilité compte, alors essayez de choisir l'option la plus lisible. P>
Si vous êtes plus à l'aise en utilisant la première syntaxe, vous pouvez l'utiliser sans problème. P>
Cependant, laissez-moi vous expliquer les différences entre les deux code:
Utilisation de 'Break' signifie que chaque fois que Sinon, c'est à peu près beaucoup, les deux codes vous donneront la même chose: D! P> INP == 'fait' code> est vrai, vous quitterez la boucle actuelle et continuez. Par conséquent, en utilisant un "autre" n'est pas obligatoire, car il atteint ou n'atteint pas ce que vous avez écrit dans la déclaration "sinon", il ne peut pas aller dans la déclaration si et la déclaration d'autre. P>
Merci d'avoir souligné la logique derrière cela, c'était difficile pour moi de comprendre les fonctionnements exacts du deuxième code lors de la première vue. Votre réponse fait tout simplement plus plus de plus!
PEP8 décourage une ligne si des déclarations
@khelwood. Merci! Je pense aussi que la première version est beaucoup plus lisible, plus claire. Bon à savoir!