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 :

Expression avec ET/OU


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Par défaut Expression avec ET/OU
    Bonjour,

    J'ai un petit problème concernant la vérification d'une expression qui est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ((insert_piece["N"] == piece_vois[g[0]]) | (piece_vois[g[0]] == "x")) & (insert_piece["E"] == piece_vois[g[1]] | (piece_vois[g[1]] == "x")) & (insert_piece["S"] == piece_vois[g[2]] | (piece_vois[g[2]] == "x")) & (insert_piece["O"] == piece_vois[g[3]] | (piece_vois[g[3]] == "x")):
    qui me renvoie l'erreur suivante:
    TypeError: unsupported operand type(s) for |: 'str' and 'bool'

    Je crois comprendre cette erreur. La vérification de la condition conduit à comparer des variables de type booléen et des chaînes. Mais je ne sais pas comment faire autrement.

    Merci pour vos idées

  2. #2
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    & et | sont des opérateurs binaires.
    A priori, c'est and et or que tu dois utliser

  3. #3
    Membre averti
    Inscrit en
    Février 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 29
    Par défaut
    oui vous utilisez AND et OR

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Par défaut
    Je m'étais rabattu sur cette solution car Python me met une erreur de syntaxe avec AND et OR.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     if ((insert_piece["N"] == piece_vois[g[0]]) OR (piece_vois[g[0]] == "x")) AND (insert_piece["E"] == piece_vois[g[1]] OR (piece_vois[g[1]] == "x")) AND (insert_piece["S"] == piece_vois[g[2]] OR (piece_vois[g[2]] == "x")) AND (insert_piece["O"] == piece_vois[g[3]] OR (piece_vois[g[3]] == "x")):
    erreur

    if ((insert_piece["N"] == piece_vois[g[0]]) OR (piece_vois[g[0]] == "x")) AND ((insert_piece["E"] == piece_vois[g[1]]) OR (piece_vois[g[1]] == "x")) AND ((insert_piece["S"] == piece_vois[g[2]]) OR (piece_vois[g[2]] == "x")) AND ((insert_piece["O"] == piece_vois[g[3]]) OR (piece_vois[g[3]] == "x")):
    ^
    SyntaxError: invalid syntax
    offset 58, c'est à dire au niveau du premier OR

  5. #5
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    c'est and et or et non AND et OR qu'il faut utiliser

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Par défaut
    A d'accord autant pour moi,

    Merci pour cette réponse

Discussions similaires

  1. OLE outlook Express avec Delphi?
    Par chrisledeveloppeur2 dans le forum Delphi
    Réponses: 3
    Dernier message: 10/01/2007, 08h59
  2. Regexp : sur expression avec plusieurs itération
    Par Yann F-FLYC dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 13/09/2006, 09h35
  3. [XPath] Problème d'expression avec current()
    Par virgul dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 24/07/2006, 15h28
  4. [Access] Expression avec une clause SQL faisant appel à une variable
    Par elgringo2007 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 27/06/2006, 13h02
  5. Connection de SQL SERVER 2005 EXPRESS avec HIBERNATE
    Par jerome giraud dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 27/02/2006, 09h07

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