[résolu] 'JEAN-PIERRE'.capitalize()

'JEAN-PIERRE'.capitalize() [résolu] - Python - Programmation

Marsh Posté le 20-11-2007 à 16:47:15    

Bonjour,
J'ai une variable qui contient des prénoms et je voudrais capitalizer cette variable (mettre une majuscule en première lettre). Malheureusement, la fonction capitalize ne fonctionne pas avec JEAN-PIERRE, elle ne met pas de majuscule à "Pierre".  
Je veux bien évidement récuperer Jean-Pierre.
Je me demande comment faire pour appliquer une fonction à chaque élément d'un tableau.
 
Ainsi je pourrais faire :
'-'.join(maVariable.split('-'))
en appliquant la fonction capitalize au passage.
 
Merci pour votre aide,
 
Axel
 
PS : je pourrais passer par un 'for', mais si y'a une façon de faire qui fonctionne en une seule ligne, ça me permettrait d'apprendre quelque chose.


Message édité par axel584 le 20-11-2007 à 16:52:46
Reply

Marsh Posté le 20-11-2007 à 16:47:15   

Reply

Marsh Posté le 20-11-2007 à 16:52:10    

J'ai finalement réussi avec ça :
 
def capitalize(texte) :
 return '-'.join([e.capitalize() for e in texte.split('-')])
 
y'a un for, mais ça tient en une seule ligne, c'est déjà ça :)
 
Axel

Reply

Marsh Posté le 21-11-2007 à 09:15:54    

sinon,  

Code :
  1. from string import capitalize as cap
  2. def capitalize(text):
  3.    return '-'.join(map(cap, text.split('-')))


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed