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 :

Verification du type de variable


Sujet :

Python

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2016
    Messages : 27
    Points : 9
    Points
    9
    Par défaut Verification du type de variable
    Bonjour,
    Je réalise un programme. Je voudrais vérifier que mes variables entrées au départ sont bien numériques.
    Voilà ce que j'ai mis au tout début de mon programme :
    if type(v, x,a,b,m,r)!='float':
    return (...)
    else:
    ....
    Sauf que quand je réalise mon programme, on me met comme erreur que type ne peut prendre un seul argument. Comment je peux faire pour vérifier que toutes mes valeurs dans la paranthèse sont bien de type float ?

    Merci

  2. #2
    Membre averti Avatar de cervo
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 220
    Points : 388
    Points
    388
    Par défaut

    Bon voici un truc basique:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    def verifier_float(args):
        try:
            float(args)
        except ValueError:
            print "{0} n'est pas du type float".format(args)
     
     
    for elts in (v, x,a,b,m,r):
        verifier_float(elts)
    Toute chose dépend de la valeur qu'on lui attribue !

  3. #3
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    salut,

    je propose : all(map(lambda i: type(i) is float, [v,x,a,b,m,r])), qui renverra True si toutes les variables sont des float, sinon False
    ou plus "pythonique" : all(type(i) is float for i in [v,x,a,b,m,r])

  4. #4
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2016
    Messages : 27
    Points : 9
    Points
    9
    Par défaut
    merci des réponses.
    dans args, je dois mettre les variables ?

  5. #5
    Membre averti Avatar de shell13010
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2008
    Messages : 281
    Points : 314
    Points
    314
    Par défaut
    Salut,

    Une autre alternative:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import numbers
    isinstance(VARIABLE_A_TESTER, numbers.Real)
    qui renverra True si toutes les variables sont des float, int, longint...


    sinon pour ta question:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    def verifier_float(args):
    attend 1 argument qui sera la variable envoyer par la dernière ligne un petit exemple pour que tu puisses comprendre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    def verifier_float(nombre):
            print('je suis rentrer dans la fonction')
            return nombre
     
    mavariable = 11.111
     
    verifier_float(mavariable)
    Avec cette exemple simple tu devrais pouvoir comprendre le fonctionnement de la fonction
    "Quelle prétention de prétendre que l'informatique est récente: Adam et Eve avaient déjà un Apple!"

  6. #6
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2016
    Messages : 27
    Points : 9
    Points
    9
    Par défaut
    Merci, j'ai enfin compris !

Discussions similaires

  1. verification du type de variable dans un champ
    Par Myfred dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/04/2007, 11h15
  2. [SQL S 2000] Type de variable ?
    Par Tankian dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/06/2004, 14h03
  3. Assembleur et type de variable delphi
    Par declencher dans le forum Langage
    Réponses: 5
    Dernier message: 20/06/2004, 23h21
  4. Comparer les types de variable
    Par onipif dans le forum ASP
    Réponses: 11
    Dernier message: 27/05/2004, 18h07
  5. Types de variables entre mysql/php et flash
    Par ramses83 dans le forum Flash
    Réponses: 2
    Dernier message: 06/10/2003, 18h35

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