[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('-')))


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box, and replicate and expand beyond their wildest dreams by throwing away the limits imposed by overbearing genetic r
Reply

Sujets relatifs:

Leave a Replay

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