mon souci est r=E9sum=E9 par la session suivante :
>>> a=3D"bonjour les enfants"
>>> print a.title()
Bonjour Les Enfants
>>> b=3D"j'ai re=E7u les v=E9los sur la t=EAte"
>>> print b.title()
J'Ai Re=E7U Les V=E9Los Sur La T=EATe
>>>
Je voudrais bien s=FBr que les lettres qui suivent des caract=E8res non
ascii 7 bits ne soient pas mis en capitales.
Merci d'avance pour tout coup de main...
--=20
Denis
a="bonjour les enfants" print a.title() Bonjour Les Enfants
b="j'ai reçu les vélos sur la tête" print b.title() J'Ai ReçU Les VéLos Sur La TêTe
Je voudrais bien sûr que les lettres qui suivent des caractères non ascii 7 bits ne soient pas mis en capitales.
Merci d'avance pour tout coup de main...
Utilise des chaînes Unicode.
b = u"j'ai reçu les vélos sur la tête" print b.title() J'Ai Reçu Les Vélos Sur La Tête
Mais et pour le 'A' de j'ai ?
Sinon depuis un autre lien - qui semble régler le problème:
def Title(words): return ' '.join([x.capitalize() for x in words.split()])
hg
Christophe Cavalaria
hg wrote:
Christophe Cavalaria wrote:
Denis Bitouzé wrote:
Bonjour,
mon souci est résumé par la session suivante :
a="bonjour les enfants" print a.title() Bonjour Les Enfants
b="j'ai reçu les vélos sur la tête" print b.title() J'Ai ReçU Les VéLos Sur La TêTe
Je voudrais bien sûr que les lettres qui suivent des caractères non ascii 7 bits ne soient pas mis en capitales.
Merci d'avance pour tout coup de main...
Utilise des chaînes Unicode.
b = u"j'ai reçu les vélos sur la tête" print b.title() J'Ai Reçu Les Vélos Sur La Tête
Mais et pour le 'A' de j'ai ?
Le comportement de title est ici conforme aux specs : "words start with uppercase characters, all remaining cased characters have lowercase."
"j'" est un premier mot et "ai" est un deuxième moi. Peut-être pas conforme aux règles de capitalisation de titre suivant les normes typographiques françaises (pour ce que j'en sais) mais au moins c'est simple et ça fait ce à quoi on s'attend tant qu'on ne lui en demande pas trop :p
Sinon depuis un autre lien - qui semble régler le problème:
def Title(words): return ' '.join([x.capitalize() for x in words.split()])
Mais cela pose toujours des problèmes sur les chaînes un peu moins bien formées comme "j' ai reçu" ou d'autre problèmes du même genre avec des ".", des "," et des " " mal placés autour :/
hg wrote:
Christophe Cavalaria wrote:
Denis Bitouzé wrote:
Bonjour,
mon souci est résumé par la session suivante :
a="bonjour les enfants"
print a.title()
Bonjour Les Enfants
b="j'ai reçu les vélos sur la tête"
print b.title()
J'Ai ReçU Les VéLos Sur La TêTe
Je voudrais bien sûr que les lettres qui suivent des caractères non
ascii 7 bits ne soient pas mis en capitales.
Merci d'avance pour tout coup de main...
Utilise des chaînes Unicode.
b = u"j'ai reçu les vélos sur la tête"
print b.title()
J'Ai Reçu Les Vélos Sur La Tête
Mais et pour le 'A' de j'ai ?
Le comportement de title est ici conforme aux specs : "words start with
uppercase characters, all remaining cased characters have lowercase."
"j'" est un premier mot et "ai" est un deuxième moi. Peut-être pas conforme
aux règles de capitalisation de titre suivant les normes typographiques
françaises (pour ce que j'en sais) mais au moins c'est simple et ça fait ce
à quoi on s'attend tant qu'on ne lui en demande pas trop :p
Sinon depuis un autre lien - qui semble régler le problème:
def Title(words):
return ' '.join([x.capitalize() for x in words.split()])
Mais cela pose toujours des problèmes sur les chaînes un peu moins bien
formées comme "j' ai reçu" ou d'autre problèmes du même genre avec des ".",
des "," et des " " mal placés autour :/
a="bonjour les enfants" print a.title() Bonjour Les Enfants
b="j'ai reçu les vélos sur la tête" print b.title() J'Ai ReçU Les VéLos Sur La TêTe
Je voudrais bien sûr que les lettres qui suivent des caractères non ascii 7 bits ne soient pas mis en capitales.
Merci d'avance pour tout coup de main...
Utilise des chaînes Unicode.
b = u"j'ai reçu les vélos sur la tête" print b.title() J'Ai Reçu Les Vélos Sur La Tête
Mais et pour le 'A' de j'ai ?
Le comportement de title est ici conforme aux specs : "words start with uppercase characters, all remaining cased characters have lowercase."
"j'" est un premier mot et "ai" est un deuxième moi. Peut-être pas conforme aux règles de capitalisation de titre suivant les normes typographiques françaises (pour ce que j'en sais) mais au moins c'est simple et ça fait ce à quoi on s'attend tant qu'on ne lui en demande pas trop :p
Sinon depuis un autre lien - qui semble régler le problème:
def Title(words): return ' '.join([x.capitalize() for x in words.split()])
Mais cela pose toujours des problèmes sur les chaînes un peu moins bien formées comme "j' ai reçu" ou d'autre problèmes du même genre avec des ".", des "," et des " " mal placés autour :/
Denis Bitouzé
Le Sun, 3 Jun 2007 22:42:42 +0200
Merci d'avance pour tout coup de main...
Je crois que je vais m'orienter vers la solution de hg (le python est exécuté sur un serveur où est hébergé mon site sous Plone)...
Bien que j'ai remercié à l'avance, je vous remercie néanmoins tous de ux postérieurement :) -- Denis
Le Sun, 3 Jun 2007 22:42:42 +0200
Merci d'avance pour tout coup de main...
Je crois que je vais m'orienter vers la solution de hg (le python est
exécuté sur un serveur où est hébergé mon site sous Plone)...
Bien que j'ai remercié à l'avance, je vous remercie néanmoins tous de ux
postérieurement :)
--
Denis
Comment souhaitez-vous que soit transformé: "j'ai reçu l'avion sur la tête" ?
C'est une bonne question finalement ; a priori, j'aimerais que cela soit transformé en :
« J'ai Reçu L'Avion Sur La Tête (Ouille Ça Fait Mal) »
ce qui est d'une logique qui, vous en conviendrez, vous échappe... autant qu'à moi ;) et qui requiert un minimum d'intelligence artificielle !
Mais, le pire, c'est que j'aimerais aussi que : « j'ai reçu l'avion sur la tête à château-chinon » devienne (sans rire cette fois) :
« J'ai Reçu L'Avion Sur La Tête À Château-Chinon »
ce que la solution de hg ne permet pas... -- Denis
Christophe
Le Sun, 3 Jun 2007 22:42:42 +0200
Merci d'avance pour tout coup de main...
Je crois que je vais m'orienter vers la solution de hg (le python est exécuté sur un serveur où est hébergé mon site sous Plone)...
Bien que j'ai remercié à l'avance, je vous remercie néanmoins tous deux postérieurement :)
Blague à part (j'insiste) Même si tu choisis la solution de hg qui à l'avantage de pouvoir coller plus aux règles de typo, je conseille quand même fortement de passer par des chaînes unicode parceque les chaînes "ascii 8 bit" c'est le mal et une source de bugs sans fin ! Ce n'est pas pour rien que dans Python 3000, toutes les chaînes seront en Unicode comme en Java ;)
Le Sun, 3 Jun 2007 22:42:42 +0200
Merci d'avance pour tout coup de main...
Je crois que je vais m'orienter vers la solution de hg (le python est
exécuté sur un serveur où est hébergé mon site sous Plone)...
Bien que j'ai remercié à l'avance, je vous remercie néanmoins tous deux
postérieurement :)
Blague à part (j'insiste) Même si tu choisis la solution de hg qui à
l'avantage de pouvoir coller plus aux règles de typo, je conseille quand
même fortement de passer par des chaînes unicode parceque les chaînes
"ascii 8 bit" c'est le mal et une source de bugs sans fin ! Ce n'est pas
pour rien que dans Python 3000, toutes les chaînes seront en Unicode
comme en Java ;)
Je crois que je vais m'orienter vers la solution de hg (le python est exécuté sur un serveur où est hébergé mon site sous Plone)...
Bien que j'ai remercié à l'avance, je vous remercie néanmoins tous deux postérieurement :)
Blague à part (j'insiste) Même si tu choisis la solution de hg qui à l'avantage de pouvoir coller plus aux règles de typo, je conseille quand même fortement de passer par des chaînes unicode parceque les chaînes "ascii 8 bit" c'est le mal et une source de bugs sans fin ! Ce n'est pas pour rien que dans Python 3000, toutes les chaînes seront en Unicode comme en Java ;)
Maric Michaud
Le Sun, 3 Jun 2007 22:42:42 +0200
Merci d'avance pour tout coup de main...
Je crois que je vais m'orienter vers la solution de hg (le python est exécuté sur un serveur où est hébergé mon site sous Plone)...
Bien que j'ai remercié à l'avance, je vous remercie néanmoins tous deux postérieurement :)
Blague à part (j'insiste) Même si tu choisis la solution de hg qui à l'avantage de pouvoir coller plus aux règles de typo, je conseille quand même fortement de passer par des chaînes unicode parceque les chaînes "ascii 8 bit" c'est le mal et une source de bugs sans fin ! Ce n'est pas pour rien que dans Python 3000, toutes les chaînes seront en Unicode comme en Java ;)
De toute façon c'est l'encodage de Plone, donc la question devrait même pas se poser.
Le Sun, 3 Jun 2007 22:42:42 +0200
Merci d'avance pour tout coup de main...
Je crois que je vais m'orienter vers la solution de hg (le python est
exécuté sur un serveur où est hébergé mon site sous Plone)...
Bien que j'ai remercié à l'avance, je vous remercie néanmoins tous deux
postérieurement :)
Blague à part (j'insiste) Même si tu choisis la solution de hg qui à
l'avantage de pouvoir coller plus aux règles de typo, je conseille quand
même fortement de passer par des chaînes unicode parceque les chaînes
"ascii 8 bit" c'est le mal et une source de bugs sans fin ! Ce n'est pas
pour rien que dans Python 3000, toutes les chaînes seront en Unicode
comme en Java ;)
De toute façon c'est l'encodage de Plone, donc la question devrait même
pas se poser.
Je crois que je vais m'orienter vers la solution de hg (le python est exécuté sur un serveur où est hébergé mon site sous Plone)...
Bien que j'ai remercié à l'avance, je vous remercie néanmoins tous deux postérieurement :)
Blague à part (j'insiste) Même si tu choisis la solution de hg qui à l'avantage de pouvoir coller plus aux règles de typo, je conseille quand même fortement de passer par des chaînes unicode parceque les chaînes "ascii 8 bit" c'est le mal et une source de bugs sans fin ! Ce n'est pas pour rien que dans Python 3000, toutes les chaînes seront en Unicode comme en Java ;)
De toute façon c'est l'encodage de Plone, donc la question devrait même pas se poser.
Bitouzé Denis
Bonjour,
je voulais tous vous remercier pour les réponses que vous m'avez faites. -- Denis
Bonjour,
je voulais tous vous remercier pour les réponses que vous m'avez
faites.
--
Denis