Dictionnaires

Questions

QCM sur les dictionnaires en Python. Une question peut avoir plusieurs bonnes propositions de réponse.

Compétences évaluées :

  • 📝 AccĂ©der aux Ă©lĂ©ments d’un dictionnaire
  • 📝 Ajouter, modifier et supprimer des Ă©lĂ©ments
  • 📝 Parcourir un dictionnaire avec une boucle
  • 📝 VĂ©rifier la prĂ©sence d’une clĂ©
  • 📝 Travailler avec une liste de dictionnaires
  • 📝 Utiliser get() pour Ă©viter des erreurs
  • 📝 Inverser un dictionnaire

  1. On dispose d'un dictionnaire stockant les prix de plusieurs articles en euros :

    Python
    prix_articles = {"ordinateur": 1200, "souris": 25, "clavier": 45}
    

    Quelle est la bonne syntaxe pour accéder au prix du clavier ?

    • prix_articles["clavier"]

    • prix_articles(2)

    • prix_articles["2"]

    • prix_articles.get("2")

  2. On considère le dictionnaire suivant représentant un carnet de notes :

    Python
    notes = {"Paul": 14, "Emma": 16}
    

    Quelle instruction permet d’ajouter Léo avec une note de 12 ?

    • notes["LĂ©o"] = 12

    • notes.add("LĂ©o", 12)

    • notes.insert("LĂ©o", 12)

    • notes.append("LĂ©o", 12)

  3. On a le dictionnaire suivant contenant des stocks de livres en bibliothèque :

    Python
    stock_livres = {"Python": 5, "JavaScript": 3, "C++": 2}
    

    Quelle expression permet de vérifier si le livre "JavaScript" est disponible dans ce dictionnaire ?

    • "JavaScript" in stock_livres

    • stock_livres.contains("JavaScript")

    • stock_livres.has_key("JavaScript")

    • "JavaScript" in stock_livres.values()

  4. On souhaite retirer Emma du carnet de notes suivant :

    Python
    notes = {"Paul": 14, "Emma": 16, "Léo": 12}
    

    Quelle instruction faut-il utiliser ?

    • del notes["Emma"]

    • notes.remove("Emma")

    • notes.popitem("Emma")

    • notes.clear("Emma")

  5. On considère un dictionnaire contenant le nombre de médailles d’or remportées par des pays :

    Python
    medailles = {"France": 10, "USA": 25, "Chine": 20}
    

    Quelle boucle permet d'afficher chaque pays et son nombre de médailles au format :

    "Le pays [nom] a obtenu [nombre] médailles d’or."

    • Python
      for nb, pays in medailles.items():
          print(f"Le pays {pays} a obtenu {nb} médailles d’or.")
      

    • Python
      for pays, nb in medailles.items():
          print(f"Le pays {pays} a obtenu {nb} médailles d’or.")
      

    • Python
      for pays in medailles:
          print(f"Le pays {pays} a obtenu {medailles[pays]} médailles d’or.")
      

    • Python
      for pays in medailles.keys():
          print(f"Le pays {pays} a obtenu {pays} médailles d’or.")
      

  6. On dispose du dictionnaire suivant :

    Python
    cours = {"Maths": 18, "Physique": 14}
    

    Quelle est la meilleure façon d’accéder à la note d’Histoire, en évitant une erreur si la matière n’est pas présente ?

    • cours.get("Histoire", 0)

    • cours["Histoire"]

    • cours.has_key("Histoire")

    • cours.contains("Histoire")

  7. On a un tableau de dictionnaires contenant des informations sur des smartphones :

    Python
    smartphones = [
        {"modèle": "iPhone 14", "prix": 999, "marque": "Apple"},
        {"modèle": "Galaxy S23", "prix": 899, "marque": "Samsung"},
        {"modèle": "Pixel 7", "prix": 649, "marque": "Google"}
    ]
    

    Quelle instruction permet d’accéder au prix du Galaxy S23 ?

    • smartphones[1]["prix"]

    • smartphones["Galaxy S23"]["prix"]

    • smartphones[1].prix

    • smartphones["prix"][1]

  8. On a le dictionnaire suivant qui associe des étudiants à leurs matières préférées :

    Python
    preferences = {
        "Alice": "Maths",
        "Bob": "Physique",
        "Charlie": "Maths",
        "David": "Informatique"
    }
    

    On veut construire un dictionnaire inverse qui associe chaque matière à la liste des étudiants qui l’aiment. Quelle boucle permet de le faire ?

    • Python
      inverse = {}
      for etudiant, matiere in preferences.items():
          if matiere not in inverse:
              inverse[matiere] = []
          inverse[matiere].append(etudiant)
      

    • Python
      inverse = {}
      for etudiant, matiere in preferences.items():
          inverse[matiere].append(etudiant)
      

    • Python
      inverse = {}
      for etudiant, matiere in preferences.items():
          inverse[etudiant] = matiere
      

    • Python
      inverse = preferences.reverse()