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

Exercices Python Discussion :

Modifier présentation liste de lignes


Sujet :

Exercices Python

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    février 2020
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : février 2020
    Messages : 15
    Points : 10
    Points
    10
    Par défaut Modifier présentation liste de lignes
    Bonjour,

    je dois faire un exercice :


    La fonction prd est assez basique en l’état. Modifier cette fonction pour que la liste de lignes soit présentée sous la forme: programme : 1-2, 7 quand il y a 2 numéros consécutifs ou plus; par exemple, 1, 2, 3, 5, la liste est présentée sous la forme 1-3, 5.
    Pour ce faire, coder une fonction presente prenant une liste d'entier et retournant une chaîne de caractères au format voulu.[



    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    def presente(lst):
    for mot in sorted(lst):
    #
    value= lst[mot]
    if len(value) == 1:
    #
    num = value[0]
    else:
    #
    value = sorted(value)
    num = "%s" % value[0]
    sep = ", "
    #
    for idx, c in enumerate(value[1:]):
    if c == value[idx] + 1:
    #
    sep = "-%s, " % c
    else:
    #
    num = num + sep + str(c)
    sep = ", "
     
    if sep != ", ":
    #
    num = num + sep
     
    print ("\t%s: %s" %(mot, num))
    Pouvez-vous me dire quelles sont mes erreurs ?

    Merci d'avance pour votre aide.

    F.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    juin 2008
    Messages
    17 545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2008
    Messages : 17 545
    Points : 30 269
    Points
    30 269
    Par défaut
    Salut,

    L'interpréteur Python déjà est là pour vous dire ce qui ne fonctionne pas.

    Après, si vous ne comprenez pas un message d'erreur ou pourquoi lorsqu'on appelle la fonction avec telle chose çà ne sort pas ce que çà devrait, encore faut-il montrer comment vous obtenez çà.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    février 2020
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : février 2020
    Messages : 15
    Points : 10
    Points
    10
    Par défaut Erreur obtenue
    J'ai exécuté le programme. Je teste.

    En exécutant mon programme j'obtiens cette erreur :


    Pour :

    type error : object of type 'int' has no len()
    Merci pour votre aide

    F:

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    juin 2008
    Messages
    17 545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2008
    Messages : 17 545
    Points : 30 269
    Points
    30 269
    Par défaut
    Salut,

    L'erreur dit juste que value est un entier.
    C'est un des éléments de la liste d'entier récupéré à l'instruction précédente, pourquoi y appliquer len?

    Vous avez la commande magique "print" pour voir ce que contiennent vos variables.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    février 2020
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : février 2020
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,

    L'erreur dit juste que value est un entier.
    C'est un des éléments de la liste d'entier récupéré à l'instruction précédente, pourquoi y appliquer len?

    Vous avez la commande magique "print" pour voir ce que contiennent vos variables.

    - W
    Hello c'est bon j'ai résolu mon problème.

    Encore merci pour ton aide.
    Très belle soirée !
    F.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 21/04/2014, 20h54
  2. Réponses: 2
    Dernier message: 22/12/2006, 18h49
  3. [debutant]Modifier une liste passer en parametres
    Par chpog dans le forum Langage
    Réponses: 3
    Dernier message: 03/01/2006, 11h57
  4. modifier une liste deroulante
    Par navona dans le forum IHM
    Réponses: 2
    Dernier message: 30/11/2005, 00h01
  5. Liste modifiable, choix de la ligne
    Par Ender dans le forum Access
    Réponses: 10
    Dernier message: 06/09/2005, 11h41

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