10
votes

Différence entre les retours et l'impression en python?

Dans Python, je ne semble pas comprendre la fonction de retour. Pourquoi l'utiliser quand je pouvais simplement l'imprimer? XXX

Ce code me donne 3 . Mais en utilisant le retour, il fait la même chose exacte. xxx

alors quelle est la différence entre les deux? Désolé pour la question Mega Noob!


0 commentaires

5 Réponses :


11
votes

Que feriez-vous si vous avez besoin de sauvegarder la valeur imprimée? Vous avez un coup d'œil à une bonne explication dans Docs et cf.: < Pré> xxx

Il n'est pas différent de Retour instruction dans une autre langue.


0 commentaires

4
votes

Pour des calculs plus complexes, vous devez renvoyer des valeurs intermédiaires. Par exemple: xxx

Vous ne pouvez pas avoir maximum Impression de son résultat dans ce cas.


3 commentaires

Imprimer Minimum (3, Maximum (4, 4)) Ne fonctionne pas dans la version de OP :-(


@eumiro: N'est-ce pas exactement le point de la réponse de Richiehindle?


@TIM: L'exemple de Richie fonctionne avec la deuxième version de l'OP. Le mien non.



4
votes

N'oubliez pas que la ligne de commande interactive n'est pas la seule méthode de lieu. Les méthodes peuvent également être appelées par d'autres méthodes, et dans ce cas impression n'est pas une façon utilisable de transmettre des données entre eux


0 commentaires

0
votes

Honnêtement, cela dépend de ce dont vous avez besoin de la fonction à faire. Si la spécification de fonction indique qu'il immergera un terme maximal, ce que vous avez bien. Ce qui arrive généralement pour une méthode comme celle-ci est que la méthode doit renvoyer la valeur réelle plus grande. Dans le cas, ils sont égaux, peu importe la valeur de la valeur.


0 commentaires

30
votes

le point strong>

retour n'est pas une fonction. C'est une construction de flux de contrôle (comme si code> else code> constructions). C'est ce qui vous permet "de prendre des données avec vous entre les appels de fonction". P>

casser strong> p>

  • Imprimer code>: donne la valeur à l'utilisateur em> comme chaîne de sortie. impression (3) code> donnerait une chaîne '3' code> à l'écran de l'utilisateur pour afficher. Le programme perdrait la valeur. P> li>

  • retour code>: donne la valeur au programme em>. Les appelants de la fonction ont ensuite les données et le type de données réelles (BOOL, INT, ETC ...) RETURN 3 CODE> aurait la valeur 3 mis à la place de l'endroit où la fonction a été appelée. P> li> ul>

    Exemple Time STROND> P>

    def ret():
        return 3
    
    def pri():
        print(3)
    
    4 + ret() # ret() is replaced with the number 3 when the function ret returns
    # >>> 7
    4 + pri() # pri() prints 3 and implicitly returns None which can't be added
    # >>> 3
    # >>> TypeError cannot add int and NoneType
    


0 commentaires