listes
Répondre à la discussion
Affichage des résultats 1 à 11 sur 11

listes



  1. #1
    invite70fe839d

    listes


    ------

    Bonjour a tous. j'ai besoin d'aide sur un programme python qui concerne les listes python en particulier sur la lectures des donnees d'une liste par l'utilisateur. IL m'a ete demamder de concevoir un programme qui a un fait fait lire a l'utilisateur les element d'une liste en les separant par des virgules sans connaitre la taille initialement. En gros, le proramme demande a l'utilisateur d'entrer plusieur mots separer par des virgules et en faire une liste a afficher. j'arrive pas a trouver comment faire. toute aide sera la bienvenue.

    (Excusez moi d'avance pour les faute...mon clavier est anglophone donc j'ai du mal a mettre les accents)

    -----

  2. #2
    invite10df0b5b

    Re : listes

    Si tu ajoute un * avant au début du dernier paramètre d'une function ça devient un "tuple" contenant tout les paramètres optionnels que tu ajoutes.
    Code:
    def listeDeMots(*mots):
        return list(mots)
        
    print(listeDeMots("bonjour", "salut", "hello"))

  3. #3
    umfred

    Re : listes

    Code:
    mots=input("Entrez vos mots:")
    listemots=mots.split(",")
    print(listemots)

  4. #4
    invite70fe839d

    Re : listes

    Merci pour la reponse mais je crois que je me suis un peu mal exprimer on dirait. En fait le probleme c'est que je n'arrive pas a faire lire les elements de la liste par l'utilisateur de cette facon
    Nom : image_2021-03-31_104221.png
Affichages : 98
Taille : 22,2 Ko

  5. A voir en vidéo sur Futura
  6. #5
    invite70fe839d

    Red face Re : listes

    merci beaucoup. ca marche!. Passer une bonne journee

  7. #6
    invite70fe839d

    Re : listes

    Merci encore pour votre reponse mais j'ai remarque que ca s'applique uniquement avec les chaines de caracteres. Mais je me demandait comment faire quand il sagit de nombres un peu comme indiquer ci dessous!
    Screenshot 2021-03-31 115354.png
    Images attachées Images attachées  

  8. #7
    umfred

    Re : listes

    regarde la fonction split que j'ai utilisé avec le paramètres ","; je te laisses deviner quel paramètre mettre (regarde aussi la fonction join)
    pour compléter le code plus haut (et te donner un gros indice pour ta question):
    Code:
    ','.join(listemots)

  9. #8
    CM63

    Re : listes

    Citation Envoyé par johanes1234 Voir le message
    Merci encore pour votre reponse mais j'ai remarque que ca s'applique uniquement avec les chaines de caracteres. Mais je me demandait comment faire quand il sagit de nombres un peu comme indiquer ci dessous!
    Ça marche pareil, lorsqu'il y a des chiffres parmi des lettres, tout est caractère, et par exemple "31_03_2021".split("_") va donner ["31","03","2021"]

  10. #9
    invite70fe839d

    Re : listes

    Merci encore pour vos retours. En fait ce qui m'a ete demander de faire est de creer une fontion qui retourne la difference des nombre positif et des nombre negatifs dans une liste pris en parametre. Donc le programme principale devrait demander a l'utilisateur d'entrer une liste de valeurs separer par une virgule ou un asterix... pour en faire une liste et par la suite appeler la fonction avec ce dernier en parametre. lors d'un autre exercise, j'ai eu faire pareil mais avec une liste composer de chaines de caracteres mais dans le cas de celle ci il semble que la liste chiffre entree grace au split soit considerer comme des caracteres "str" par la fonction dans j'ai eu quelques erreur a ce sujet. Merci d'avance pour la comprehension
    Screenshot 2021-03-31 141230.png
    Screenshot 2021-03-31 141402.png

  11. #10
    Jack
    Modérateur

    Re : listes

    Merci d'utiliser les balises code comme c'est demandé en tête de ce forum.

  12. #11
    umfred

    Re : listes

    input renvoie une chaine de caractères. Si la chaine est censé être un nombre, il faut les convertir dans un type numérique (int, float)
    Code:
    def get_chaine_to_list(sep):
        mots=input(f"Entrez vos mots séparés par {sep}:")
        listemots=mots.split(sep)
        l=[]
        if sep =='*':  # je suppose que * sépare des nombres entiers, alors que "," sépare des mots, si autre on ne fait rien
            for mot in listemots:
                l.append(int(mot))
            return l
        else:
            return listemots
    nombres=chaine_to_list('*)
    posMoinsNeg(nombres)
    #autre façon de faire(version courte)
    mots=input("Entrez vos mots séparés par *:")
    listemots=mots.split('*')
    listenombres=[int(mot) for mot in listemots]

Discussions similaires

  1. listes et Python
    Par jacknicklaus dans le forum Programmation et langages, Algorithmique
    Réponses: 5
    Dernier message: 18/03/2018, 18h47
  2. Python Listes
    Par invite20b2786c dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 01/11/2016, 00h18
  3. listes chainées
    Par invite72fa7580 dans le forum Programmation et langages, Algorithmique
    Réponses: 9
    Dernier message: 15/12/2014, 22h35
  4. Les listes d'attentes
    Par invite24efdb8f dans le forum Orientation après le BAC
    Réponses: 2
    Dernier message: 04/06/2008, 07h42
  5. Familles et listes...
    Par inviteedb947f2 dans le forum Mathématiques du supérieur
    Réponses: 5
    Dernier message: 14/03/2007, 23h04