IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Transmettre une valeur d'un fonction à une autre


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Transmettre une valeur d'un fonction à une autre
    Bonjour à tous,

    le but est de rapatrier, dans la fonction f1, une valeur (ztest) située dans la fonction f2.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    # coding:utf-8
    #version 3.x python
     
    from tkinter import *
    from tkinter.ttk import *
    print("TkVersion", TkVersion)
    print("TclVersion", TclVersion)
    print("Python version", sys.version_info)
     
    class Main:
     
        def __init__(self, root):
            self.root = root
            self.root.title("--------------")
            self.root.geometry("20x6+0+0")   #("1420x660+0+0")
            self.root.config(bg="cadet blue")
     
    if __name__ =='__main__':
        root = Tk()
        application = Main(root)
     
        # ---
        nb_frame = 0
        ztest = 0
        # ---
     
        def f2(ztest):
            ztest = 10
            print("nb",ztest)
            return ztest
     
        def f1():
            nb_frame = 2
            f2(ztest)
            print("f2", ztest)
     
        f1()
     
        root.mainloop()
    merci de votre temps

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 744
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 744
    Par défaut
    Salut,

    Citation Envoyé par taratatasoleil Voir le message
    le but est de rapatrier, dans la fonction f1, une valeur (ztest) située dans la fonction f2.
    C'est ce à quoi sert "return".
    Après, il faut apprendre à s'en servir en révisant un peu les fonctions.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Invité
    Invité(e)
    Par défaut
    merci pour l'indice
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
        # ---
        ztest = 3
        # ---
     
        def f2(ztest):
            ztest = ztest + 15
            print("valeur f2",ztest)
            # return ztest
     
        def f1():
            global ztest
            print("valeur global", ztest)
            f2(ztest)
            return ztest
            print("récupération valeur f2", ztest)
     
        f1()

  4. #4
    Membre Expert
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    923
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 923
    Billets dans le blog
    8
    Par défaut
    Bonjour,

    Là tu récupères la valeur global, pas le return de f2
    Pour récuperer la valeur du return de f2 dans une variable:

  5. #5
    Invité
    Invité(e)
    Par défaut
    merci Hominidé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
       ztest = 3
     
        def f2(ztest):
            ztest = 21
            ztest = ztest + 2
            return ztest
     
        def f1():
            global ztest
            print("valeur global", ztest)
            f2(ztest)
            valeur = f2(ztest)
            print("récupération valeur f2", valeur)
     
        f1()

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 744
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 744
    Par défaut
    Salut,

    ligne 10, à quoi sert global ztest?
    Pourquoi appeler 2 fois f2(ztest)?

    Les tutos. c'est bien parce qu'ils vous proposent aussi des exercices corrigés.
    Après, si vous n'avez pas envie d'apprendre...

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Réponses: 5
    Dernier message: 10/11/2011, 12h40
  2. Réponses: 3
    Dernier message: 30/11/2006, 06h25
  3. [Struts] transmettre une valeur d'une JSP à une Autre
    Par khokho dans le forum Struts 1
    Réponses: 7
    Dernier message: 20/04/2006, 22h57
  4. Réponses: 1
    Dernier message: 25/09/2005, 20h03
  5. Modifier la valeur d'un champ en fonction d'une autre...
    Par venividivici dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 25/08/2005, 14h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo