Je suis très novice en programmation et je suis coincé sur cette question de base dans l'un de mes quiz de cours: écrivez une fonction numbered_list (items) qui imprime une liste numérotée (à partir de 1) des éléments dans le ...

0
coschal 17 mars 2021 à 03:03

3 réponses

Meilleure réponse

Voici votre code modifié pour faire exactement ce que vous voulez:

def numbered_list(items):
    """Prints a numbered list of items starting from 1"""
    i = 0 
    while i <len(items):
        print(i+1,items[i])
        i += 1
    print (items)

todos = ["Watch lecture videos", "Complete quiz", "Practise"]
numbered_list(todos)

Tout ce que j'ai changé est l'instruction d'impression, pour imprimer i + 1 avant l'élément de la liste:

print(i+1,items[i])

Ce code génère:

1 Watch lecture videos
2 Complete quiz
3 Practise
1
Elyes Lounissi 17 mars 2021 à 00:08

Le code doit être indenté après la fonction define et après la boucle while, il doit être comme ceci

def numbered_list(items):
    """Prints a numbered list of items starting from 1"""
    i = 0 

    while i <len(items):
        print(items[i])
        
        
        i += 1
        
todos = ["Watch lecture videos", "Complete quiz", "Practise"]
numbered_list(todos)  
0
Mahmoud Hegazy 17 mars 2021 à 00:15

enumerate() renvoie une paire d'index et de valeur.

todos = ["Watch lecture videos", "Complete quiz", "Practise"]


def numbered_list(items):
    for idx, item in enumerate(items, start=1):
        print(idx, item)

numbered_list(todos)
0
pu2x 17 mars 2021 à 00:12