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 :

Inverser booléen / toggle boolean


Sujet :

Python

  1. #1
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    160
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 160
    Points : 91
    Points
    91
    Par défaut Inverser booléen / toggle boolean
    Bonjour,

    Je joue les questions réponses car je pense que cela peut intéresser d'autres que moi... c'est peut être stupide mais je n'ai trouvé cela nulle part et je n'ai pas trouvé de méthode équivalente non plus.

    Je propose une solution simple pour inverser un booleen:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monBooleen = bool(not monBooleen)
    Si monBooleen était égale à True, le code ci dessus vous renverra False et l'affectera à monBooleen... et vice et versa.

    Peut être à mettre dans la FAQ?

  2. #2
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 418
    Points : 1 658
    Points
    1 658
    Par défaut
    Merci.

    Mais ceci ne fait pas l'affaire ?:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monBooleen = not monBooleen
    Par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    m = 2 in [1,4,7]
    k = not m
    print k
     
    # affiche True

  3. #3
    Membre éprouvé
    Avatar de Antoine_935
    Profil pro
    Développeur web/mobile
    Inscrit en
    Juillet 2006
    Messages
    883
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur web/mobile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 883
    Points : 1 066
    Points
    1 066
    Par défaut
    L'opérateur not renverra de toute façon un booleen, quoi qu'il y ait derrière.
    Comme l'a dir eyquem, il suffit de le mettre devant la variable, peu importe sa nature.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    >>> not ["hello"]
    False
    >>> not []
    True
    >>> not{"Spam":"Eggs"}
    False
    >>> not 0
    True
    En fait, les deux expression suivantes sont équivalentes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    not myVar
    not bool(myVar)
    à la différence que la deuxième version prendra plus de temps à l'exécution.

  4. #4
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    160
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 160
    Points : 91
    Points
    91
    Par défaut
    En effet,

    c'est certainement la raison pour laquelle je n'ai rien trouvé à ce propos!!
    Tellement évident qu'il n'y a qu'un idiot comme moi pour poser la question....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [HSQL] Inverser des booleans sur plusieurs lignes
    Par Djobird dans le forum Langage SQL
    Réponses: 8
    Dernier message: 24/06/2007, 21h13
  2. Inversion d'un boolean
    Par mr_keyser dans le forum Windows Forms
    Réponses: 5
    Dernier message: 31/05/2007, 19h37
  3. Inversion de valeur de boolean
    Par cubitus91 dans le forum Delphi
    Réponses: 2
    Dernier message: 05/12/2006, 00h07
  4. Comment fait-on pour inverser un boolean ?
    Par [DreaMs] dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 08/11/2006, 12h25
  5. Inverse d'un 'Boolean'
    Par Sunchaser dans le forum C++Builder
    Réponses: 7
    Dernier message: 29/07/2006, 13h14

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