Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème code Python. Pouvez-vous m'aider Svp

Le résultat final doit être uniquement une liste de fruits!

    18 avril 2022 à 12:59:33

    list1 = ["Banane","Pomme","Dattes","Concombre""carotte"]
    list2 = ["Kiwi","Salade","Ognion","pomme de terre","Mangue"]
    b=0
    c=0
    final_list=[]

    for i in range (len(list1)):
          b= list1 [i] 
    if i == "concombre" and i== "carotte":
          list1.remove(i)
          print ("List1",list1)

    for j in range (len(list2)):
          c= list2 [j]

    if j == "salade" and j=="Ognion" and j=="pomme de terre":
          list2.remove("salade","Ognion","pomme de terre")
    final_list.append(list1)
    final_list.append(list2)
    print ("The list of fruits are: ",final_list)

    The list of fruits are: [['Banane', 'Pomme', 'Dattes', 'Concombre', 'carotte'], ['Kiwi', 'Salade', 'Ognion', 'pomme de terre', 'Mangue']]

    -
    Edité par Ahmedkic92 18 avril 2022 à 13:09:32

    • Partager sur Facebook
    • Partager sur Twitter
      18 avril 2022 à 14:32:53

      Tu effaces des éléments d'une liste pendant que tu la parcours. Ça peut donner toutes sortes de problèmes.

      Tu compares les indices i et j au lieu de liste1[i[ et liste2[j] ...

      if i == "concombre" and i== "carotte":
      le "and" veut dire en même temps. Il faudrait mettre "or".
      À la fin tu fais des append, il faudrait faire des extend.
      Pourquoi ne pas construire ta liste finale dans les boucles en ne mettant (append) que les fruits au lieu d'effacer ceux que tu ne veux pas?

      -
      Edité par PierrotLeFou 18 avril 2022 à 14:47:26

      • Partager sur Facebook
      • Partager sur Twitter

      Le Tout est souvent plus grand que la somme de ses parties.

        18 avril 2022 à 17:39:15

        Niveau comparaison, "Concombre" et "concombre" c'est différent.

        Et comparer des index à des chaînes n'a rien de cohérent !

        • Partager sur Facebook
        • Partager sur Twitter

        Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
        La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

          19 avril 2022 à 1:04:06

          Ça m'apprendra à ne pas parcourir par caractère avec ma synthèse vocale. :)
          Suis-je  con combre ?
          • Partager sur Facebook
          • Partager sur Twitter

          Le Tout est souvent plus grand que la somme de ses parties.

            19 avril 2022 à 8:56:55

            PierrotLeFou a écrit:

            Suis-je  con combre ?


            Je relevais le code du PO, et je n'avais aucune remarque sur ta réponse qui est toujours pertinente une fois les premiers problèmes révélés résolus.
            • Partager sur Facebook
            • Partager sur Twitter

            Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
            La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

              31 décembre 2023 à 10:34:03 - Message modéré pour le motif suivant : Merci d’utiliser le bouton code pour insérer un code sur le forum


                31 décembre 2023 à 10:53:26

                Bonjour, Merci d'indiquer un titre de sujet en rapport avec votre problématique.

                Le message qui suit est une réponse automatique activée par un membre de l'équipe de modération. Les réponses automatiques leur permettent d'éviter d'avoir à répéter de nombreuses fois la même chose, ce qui leur fait gagner du temps et leur permet de s'occuper des sujets qui méritent plus d'attention.
                Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter la personne en question par Message Privé.

                Pour plus d'informations, nous vous invitons à lire les règles générales du forum

                Mauvais titre

                Le titre est un élément important qui ne doit pas être négligé. N'oubliez pas cette règle simple : le titre idéal résume la question que vous allez poser en une petite phrase. Il doit permettre aux visiteurs de se repérer facilement dans le forum visité et d'identifier le sujet à sa seule lecture.

                Vous pouvez utiliser divers préfixes comme [Erreur], [MySQL], [Compatibilité], etc... Aussi, pensez à consulter les règles propres à chaque forum (visibles dans les topics épinglés en haut des sections).

                De plus, choisir un bon titre permet de rendre plus faciles les recherches des autres membres.

                Les titres de type "besoin d'aide" ou "problème" ne sont pas tolérés.

                Merci de modifier votre titre. Pour cela, éditez le premier message de votre sujet.

                (titre originel : Problème code Python. Pouvez-vous m'aider Svp)

                Merci de colorer votre code à l'aide du bouton Code </>

                Les forums d'Openclassrooms disposent d'une fonctionnalité permettant de colorer et mettre en forme les codes source afin de les rendre plus lisibles et faciles à manipuler par les intervenants. Pour cela, il faut utiliser le bouton  </> de l'éditeur, choisir un des langages proposés et coller votre code dans la zone prévue. Si vous utilisez l'éditeur de messages en mode Markdown, il faut utiliser les balises <pre class="brush: php;">Votre code ici</pre>.

                Merci de modifier votre message d'origine en fonction.

                Liens conseillés

                -
                Edité par AbcAbc6 31 décembre 2023 à 10:56:53

                • Partager sur Facebook
                • Partager sur Twitter
                  31 décembre 2023 à 10:54:04

                  Bonjour,

                  Après plus d'un an sur le forum, vous n'avez toujours pas compris comment mettre votre code entre balises adaptées au langage.

                  Vous auriez fait ce type de code en évitant les range(len(...)) et les if à répétitions, ça faisait moins mal aux yeux.

                  list1 = ["Banane", "Pomme", "Dattes", "Concombre", "carotte"]
                  list2 = ["Kiwi", "Salade", "Ognion", "pomme de terre", "Mangue"]
                  
                  fruits_list1 = {"Banane", "Pomme", "Dattes"}
                  fruits_list2 = {"Kiwi", "Mangue"}
                  
                  b = [fruit for fruit in list1 if fruit in fruits_list1]
                  c = [fruit for fruit in list2 if fruit in fruits_list2]
                  
                  final_list = b + c
                  
                  print("The list of fruits are: ", final_list)



                  • Partager sur Facebook
                  • Partager sur Twitter

                  Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
                  La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

                  Problème code Python. Pouvez-vous m'aider Svp

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  • Editeur
                  • Markdown