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

Python Discussion :

ex:mettre 1er lettre de chaque mot d une chaine en majuscule 'boucle'


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Février 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2018
    Messages : 8
    Par défaut ex:mettre 1er lettre de chaque mot d une chaine en majuscule 'boucle'
    bonjour tout le monde,

    je suis débutante en python j'essaye d apprendre la programmation en python et j ai un exercice a faire :

    voilà j'aimerai mettre chaque 1er lettre d une chaine de caractère en majuscule :

    chaine=' bonjour tout le monde '


    je sais le faire avec la fonction title()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    chaine= 'bonjour tout le monde'
    print(chaine.title());
    Bonjour Tout Le Monde
    mais j'aimerai le faire en utilisant la boucle while comment je peux le faire ?
    après j'aimerai mettre seulement la 1er lettre du 2em mot ( tout) en majuscule = bonjour Tout le monde

    merci d avance

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 308
    Par défaut
    Salut,

    Tu peux transformer ta chaîne en liste et boucler dessus:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    >>> c = "bonjour tout le monde"
    >>> l = c.split(' ')
    >>> t = []
    >>> for i in l:
    ...     t.append(i.title())
    ... 
    >>> result = " ".join(t)
    >>> result
    'Bonjour Tout Le Monde'
    >>> # en une ligne
    >>> result = " ".join([i.title() for i in c.split(' ')])
    >>> result
    'Bonjour Tout Le Monde'

  3. #3
    Membre du Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Février 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2018
    Messages : 8
    Par défaut
    bonjour,

    merci pour la reponse même si j ai pas bien compris c quoi split c une fonction qui sert a quoi exactement? et pour la boucle j aimerai savoir comment faire avec while ..

    merci encore

  4. #4
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 308
    Par défaut
    Teste ceci dans une console "bonjour tout le monde".split(' ').

    while signifie tant que et sera donc utilisé lorsque l'on ignore combien de fois il faudra boucler.
    Ça ne correspond pas à ta situation puisque tu connais le nombre de mots de la chaîne.

    Maintenant si c'est pour l'exercice, essaye de le faire et, si ça ne va pas, poste ton code.

  5. #5
    Membre du Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Février 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2018
    Messages : 8
    Par défaut
    bonjour,

    oui j ai compris en fait split() : sert a diviser une chaîne de caractère en sous chaîne comme l exemple ici " bonjour tout le monde " = ['bonjour','tout','le','monde']

    mais au cas ou on veut ignorer le nombre de mots je devrai utiliser while !

    merci

  6. #6
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 308
    Par défaut
    Toi, tu ignores peut-être le nombre d'élément de la liste mais pas Python.

    C'est pour cela que l'on peut faire for i in my_list

    Mais, comme je l'ai dit, si tu veux le faire avec un while, fonce et, si ça ne va pas, montre nous ton code.

Discussions similaires

  1. Réponses: 0
    Dernier message: 31/05/2011, 19h59
  2. [RegEx] mettre en majuscule chaque mot d'une chaine
    Par bigs3232 dans le forum Langage
    Réponses: 9
    Dernier message: 20/05/2010, 10h48
  3. Réponses: 10
    Dernier message: 15/10/2008, 12h21
  4. garder les 2eres lettres de chaque mot dans une colonne
    Par infiniti dans le forum Langage
    Réponses: 3
    Dernier message: 01/06/2008, 18h01

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