Partage
  • Partager sur Facebook
  • Partager sur Twitter

Ajouter les valeurs à la fin d'un dictionnaire

Sujet résolu
    5 octobre 2010 à 12:37:01


    if alias['reactifJointure'] == True and alias['produitJointure'] == True :
                print 'a'
            
        """ Le réactif à une jointure droite """
        elif alias['reactifJointure'] == True :
                print 'a'
                
        """ Le produit à une jointure droite """
        elif alias['produitJointure'] == True :
                print 'a'
    


    if machin == True, c'est moche. Écris directement if machin.
    Sinon, si ton code ce dessus est vraiment dans ton programme, tu peux le simplifier en un seul test (mais j'imagine que ce n'est pas le cas ?).
    • Partager sur Facebook
    • Partager sur Twitter
      5 octobre 2010 à 18:41:00

      @Maxi : En effet, merci, j'avais perdu l'habitude de cette technique. Sinon, j'ai encore le syntax error.
      De plus, je ne peux pas simplifier tout en un seul test car les calcules sont différent en fonction de(s) molécule(s) sur le quel on effectue les calcules.
      • Partager sur Facebook
      • Partager sur Twitter
        5 octobre 2010 à 19:48:53

        Pour ton erreur de syntaxe, peux-tu reposter exactement le code tel que tu l'envoies à Python ? Ça doit effectivement venir de l'indentation.
        • Partager sur Facebook
        • Partager sur Twitter
          5 octobre 2010 à 20:19:07

          Voilà ! J'utilise des tabulations normalement mais firefox les transformes en espace.
          """ Le réactif et le produit ont une jointure à droite """
                  if alias['reactifJointure'] and alias['produitJointure'] :
                      print 'a'
                  
                  """ Le réactif à une jointure droite """
                  elif alias['reactifJointure'] :
                      print 'a'
                  
                  """ Le produit à une jointure droite """
                  elif alias['produitJointure'] :
                      print 'a'
          
          • Partager sur Facebook
          • Partager sur Twitter
            5 octobre 2010 à 20:38:05

            Utilise des espaces (tu viens en fait de comprendre l'intérêt de ce choix). N'importe quel éditeur digne de ce nom te proposera de remplacer tes tabulations par des espaces (une fois maintenant dans ton code et ensuite directement quand tu les écriras).
            Et la convention en Python, c'est 4 espaces par niveau d'indentation. Tu ferais mieux de la suivre plutôt que de rester avec des tabulations (qui ne t'apporteront que des ennuis) au cas où quelqu'un ne la suivrait pas.

            À tout hasard, tu travailles bien avec Python 2 ?
            • Partager sur Facebook
            • Partager sur Twitter
              5 octobre 2010 à 20:56:10

              Je travail sous python 2, j'ai tenté python 3 mais j'ai trouvé aucun site qui me montre les différences entre les deux et une erreur sur un simple "print" m'a fait renoncer la version 3 pour le moment.
              Sinon, j'ai effectué un rapide petit remplacement de toute les tabulations en 4 espaces... mais l'erreur de syntaxError apparaît encore, voici toute les lignes au dessus (Pour le moment, non commenté), au cas ou l'erreur viendrais d'en haut :
              """ Début du calcul """
                  for atomeReactif in reactif :
                      j = 0
                      
                      for tmp in produit :
                          if atomeReactif[0] == tmp[0] :
                              atomeProduit = tmp
                              break;
                          j = j + 1
                              
                      alias = {'reactif': atomeReactif[1][0], 'reactifNombre': reactif[i][1][0], 'reactifSolution': reactif[i][1][2], 'reactifJointure': atomeReactif[1][1],
                      'produit': atomeProduit[1][0], 'produitNombre': produit[j][1][0], 'produitSolution': produit[i][1][2], 'produitJointure': atomeJointure[1][1]} 
                      
                      
                      """ Le réactif et le produit ont une jointure à droite """
                      if alias['reactifJointure'] and alias['produitJointure'] :
                          print 'a'
                      
                      """ Le réactif à une jointure droite """
                      elif alias['reactifJointure'] :
                          print 'a'
                      
                      """ Le produit à une jointure droite """
                      elif alias['produitJointure'] :
                          print 'a'
              
              • Partager sur Facebook
              • Partager sur Twitter
                5 octobre 2010 à 21:56:05

                Et en virant le point-virgule après break ?
                • Partager sur Facebook
                • Partager sur Twitter
                  5 octobre 2010 à 22:09:58

                  Edit: Le problème vient uniquement des commentaires (à faire commencer par un #).
                  • Partager sur Facebook
                  • Partager sur Twitter
                    5 octobre 2010 à 22:15:21

                    En effet ! Merci beaucoup !
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Ajouter les valeurs à la fin d'un dictionnaire

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown