Bonjour,
J'aimerais que dans une liste d'éléments, la première lettre de chaque mot soit en majuscule. Par exemple pour la liste suivante : liste = ["PEDro poula","moli melo"] on obtiendrait liste = ["Pedro Poula","Meli Melo"].
Merci par avance
Bonjour,
J'aimerais que dans une liste d'éléments, la première lettre de chaque mot soit en majuscule. Par exemple pour la liste suivante : liste = ["PEDro poula","moli melo"] on obtiendrait liste = ["Pedro Poula","Meli Melo"].
Merci par avance
Bonsoir,
Avec capwords :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 s="meli melo" from string import capwords print (capwords(s)) Meli Melo
Arduino, Raspberry Pi, ESP32, Infineon/Cypress PSoC, FPGA...
Arduino : Le forum, Le manuel de laboratoire, les Quiz, les cahiers pratiques, les sources et outils
Des capteurs connectés pour la maison avec Arduino et Raspberry Pi [Nouveau] Et en Zigbee ?
- FPGA : programmation d'un transmetteur UART en SystemVerilog [Nouveau]
- Apprendre à développer sur FPGA avec Intel Quartus Prime
- FPGA : programmer un contrôleur pour écran VGA
[Nouveau] Vous voulez soutenir le Club Developpez.com ? Abonnez-vous !
Je préfère une méthode purement "algorithmique".
J'avais plus pensé à quelque chose comme cela :
Mais j'avais obtenu une erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 liste = ["PEDro poula","moli melo"] for i in range(len(liste)-1): if liste[i][0]: liste[i][0] = liste[i][0].upper()
Par exemple dans la console :
Mais si tu as "meli melo" et qu'il faut "Meli Melo", il faut commencer par séparer les deux mots :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 In [1]: s="meli" In [2]: s[0].upper() Out[2]: 'M' In [3]: s[1:] Out[3]: 'eli' In [4]: s[0].upper()+s[1:] Out[4]: 'Meli'
Si tu n'as pas le droit à split()...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 In [5]: s="meli melo" In [6]: s.split() Out[6]: ['meli', 'melo']
Arduino, Raspberry Pi, ESP32, Infineon/Cypress PSoC, FPGA...
Arduino : Le forum, Le manuel de laboratoire, les Quiz, les cahiers pratiques, les sources et outils
Des capteurs connectés pour la maison avec Arduino et Raspberry Pi [Nouveau] Et en Zigbee ?
- FPGA : programmation d'un transmetteur UART en SystemVerilog [Nouveau]
- Apprendre à développer sur FPGA avec Intel Quartus Prime
- FPGA : programmer un contrôleur pour écran VGA
[Nouveau] Vous voulez soutenir le Club Developpez.com ? Abonnez-vous !
Oui, je veux faire 'Meli Melo', j'ai donc conçu ce code :
mais j'obtiens l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 liste = ["meli","melo"] for i in range(len(liste)-1): print(liste[i].upper()+liste[1:], end="")
file "./prog.py", line 3, in <module>
TypeError: Can't convert 'list' object to str implicitly
C'est seulement la première lettre qu'il faut mettre en majuscule.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 liste = ["meli","melo"] liste[0] 'meli' liste[1] 'melo' liste[0].upper() 'MELI' liste[0][0].upper() 'M'
Le message d'erreur vient de liste[1:], il faut d'abord récupérer liste[i] avant d'extraire la sous-chaîne : liste[i][1:].
Arduino, Raspberry Pi, ESP32, Infineon/Cypress PSoC, FPGA...
Arduino : Le forum, Le manuel de laboratoire, les Quiz, les cahiers pratiques, les sources et outils
Des capteurs connectés pour la maison avec Arduino et Raspberry Pi [Nouveau] Et en Zigbee ?
- FPGA : programmation d'un transmetteur UART en SystemVerilog [Nouveau]
- Apprendre à développer sur FPGA avec Intel Quartus Prime
- FPGA : programmer un contrôleur pour écran VGA
[Nouveau] Vous voulez soutenir le Club Developpez.com ? Abonnez-vous !
Bonjour,
Ou bien…
Clodion
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 >>> lst = ["meli","melo"] >>> for i in lst: print(i[0].upper()+i[1:], end=" ") Meli Melo >>>
Partager