Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
On Tue, 26 Apr 2005 12:47:09 +0200, Olivier Ravard
wrote:Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Qu'est-ce que tu entends par "le type d'encodage par défaut"? Si c'est
l'encodage dans lequel sont écrites les constantes chaine dans ton script,
voir la réponse de Guillaume. Si c'est l'encodage qui sera automatiquement
utilisé lorsque tu passes des chaines unicode à des fonctions qui
attendent des chaines "normales", la réponse est plus compliquée:
- la fonction qui fait ça est setdefaultencoding dans le module sys (soit
dit en passant, ça n'était pas vraiment difficile à trouver, le nom étant
vraiment celui qu'on attend; un petit tour dans l'index du Library
Reference et tu l'aurais trouvé tout de suite...)
- MAIS on ne peut pas l'utiliser comme on veut: vu que l'encodage n'est
pas censé changer à tout bout de champ, cette fonction est censée etre
appelée uniquement dans un script du personnalisation au niveau site (cf.
http://docs.python.org/lib/module-site.html). En dehors d'un tel module,
le nom n'est plus disponible dans le module sys et la fonction ne peut
plus etre appelée.
Par ailleurs, en règle générale, utiliser cette fonction n'est pas une
bonne idée. Python arrive en général assez bien à deviner quel encodage
par défaut il peut utiliser, et meme s'il n'y arrive pas, se reposer sur
l'encodage par défaut pour ne pas encoder soi-meme ses chaines comme ça va
bien quand on en a besoin aura très souvent des conséquences... disons
surprenantes...
Si tu nous expliques pourquoi tu crois avoir besoin de faire ça, peut-etre
qu'on pourra mieux t'aider à comprendre comment t'en passer ;-)
HTH quand meme
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17;8(%,5.Z65'*9--56l7+-'])"
On Tue, 26 Apr 2005 12:47:09 +0200, Olivier Ravard
<olivier.ravard@novagrid.com> wrote:
Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Qu'est-ce que tu entends par "le type d'encodage par défaut"? Si c'est
l'encodage dans lequel sont écrites les constantes chaine dans ton script,
voir la réponse de Guillaume. Si c'est l'encodage qui sera automatiquement
utilisé lorsque tu passes des chaines unicode à des fonctions qui
attendent des chaines "normales", la réponse est plus compliquée:
- la fonction qui fait ça est setdefaultencoding dans le module sys (soit
dit en passant, ça n'était pas vraiment difficile à trouver, le nom étant
vraiment celui qu'on attend; un petit tour dans l'index du Library
Reference et tu l'aurais trouvé tout de suite...)
- MAIS on ne peut pas l'utiliser comme on veut: vu que l'encodage n'est
pas censé changer à tout bout de champ, cette fonction est censée etre
appelée uniquement dans un script du personnalisation au niveau site (cf.
http://docs.python.org/lib/module-site.html). En dehors d'un tel module,
le nom n'est plus disponible dans le module sys et la fonction ne peut
plus etre appelée.
Par ailleurs, en règle générale, utiliser cette fonction n'est pas une
bonne idée. Python arrive en général assez bien à deviner quel encodage
par défaut il peut utiliser, et meme s'il n'y arrive pas, se reposer sur
l'encodage par défaut pour ne pas encoder soi-meme ses chaines comme ça va
bien quand on en a besoin aura très souvent des conséquences... disons
surprenantes...
Si tu nous expliques pourquoi tu crois avoir besoin de faire ça, peut-etre
qu'on pourra mieux t'aider à comprendre comment t'en passer ;-)
HTH quand meme
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17;8(%,5.Z65\'*9--56l7+-'])"
On Tue, 26 Apr 2005 12:47:09 +0200, Olivier Ravard
wrote:Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Qu'est-ce que tu entends par "le type d'encodage par défaut"? Si c'est
l'encodage dans lequel sont écrites les constantes chaine dans ton script,
voir la réponse de Guillaume. Si c'est l'encodage qui sera automatiquement
utilisé lorsque tu passes des chaines unicode à des fonctions qui
attendent des chaines "normales", la réponse est plus compliquée:
- la fonction qui fait ça est setdefaultencoding dans le module sys (soit
dit en passant, ça n'était pas vraiment difficile à trouver, le nom étant
vraiment celui qu'on attend; un petit tour dans l'index du Library
Reference et tu l'aurais trouvé tout de suite...)
- MAIS on ne peut pas l'utiliser comme on veut: vu que l'encodage n'est
pas censé changer à tout bout de champ, cette fonction est censée etre
appelée uniquement dans un script du personnalisation au niveau site (cf.
http://docs.python.org/lib/module-site.html). En dehors d'un tel module,
le nom n'est plus disponible dans le module sys et la fonction ne peut
plus etre appelée.
Par ailleurs, en règle générale, utiliser cette fonction n'est pas une
bonne idée. Python arrive en général assez bien à deviner quel encodage
par défaut il peut utiliser, et meme s'il n'y arrive pas, se reposer sur
l'encodage par défaut pour ne pas encoder soi-meme ses chaines comme ça va
bien quand on en a besoin aura très souvent des conséquences... disons
surprenantes...
Si tu nous expliques pourquoi tu crois avoir besoin de faire ça, peut-etre
qu'on pourra mieux t'aider à comprendre comment t'en passer ;-)
HTH quand meme
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17;8(%,5.Z65'*9--56l7+-'])"
"Eric Brunel" a écrit dans le message de news:On Tue, 26 Apr 2005 12:47:09 +0200, Olivier Ravard
wrote:Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Qu'est-ce que tu entends par "le type d'encodage par défaut"? Si c'est
l'encodage dans lequel sont écrites les constantes chaine dans ton script,
voir la réponse de Guillaume. Si c'est l'encodage qui sera automatiquement
utilisé lorsque tu passes des chaines unicode à des fonctions qui
attendent des chaines "normales", la réponse est plus compliquée:
- la fonction qui fait ça est setdefaultencoding dans le module sys (soit
dit en passant, ça n'était pas vraiment difficile à trouver, le nom étant
vraiment celui qu'on attend; un petit tour dans l'index du Library
Reference et tu l'aurais trouvé tout de suite...)
- MAIS on ne peut pas l'utiliser comme on veut: vu que l'encodage n'est
pas censé changer à tout bout de champ, cette fonction est censée etre
appelée uniquement dans un script du personnalisation au niveau site (cf.
http://docs.python.org/lib/module-site.html). En dehors d'un tel module,
le nom n'est plus disponible dans le module sys et la fonction ne peut
plus etre appelée.
Par ailleurs, en règle générale, utiliser cette fonction n'est pas une
bonne idée. Python arrive en général assez bien à deviner quel encodage
par défaut il peut utiliser, et meme s'il n'y arrive pas, se reposer sur
l'encodage par défaut pour ne pas encoder soi-meme ses chaines comme ça va
bien quand on en a besoin aura très souvent des conséquences... disons
surprenantes...
Si tu nous expliques pourquoi tu crois avoir besoin de faire ça, peut-etre
qu'on pourra mieux t'aider à comprendre comment t'en passer ;-)
Merci. Je pense que ceci répond à ma question. Mon problème plus précis est
le suivant :
Je saisi des chaînes de caractères dans une interface (wxPython) et je met
le résultat dans une
base de données. La base de données n'accepte que des chaînes normale et wx
me renvoie
une chaîne où les caractères accentués sont remplacés par des x.. ou alors
une chaîne unicode
(selon la version de wx installée). Ensuite, je relis la base et je met le
résultat dans l'interface ou
l'on voit les accents remplcés par des x..
En fait, je pense que c'est un problème trivial pour ceux qui maîtrisent
l'unicode, ce qui n'est pas
mon cas. RTFM allez vous me dire. C'est ce que j'applique mais sans trop de
réussite dans ce cas.
HTH quand meme
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17;8(%,5.Z65'*9--56l7+-'])"
"Eric Brunel" <eric_brunel@despammed.com> a écrit dans le message de news:
opspubr8fcrqur0o@eb.pragmadev...
On Tue, 26 Apr 2005 12:47:09 +0200, Olivier Ravard
<olivier.ravard@novagrid.com> wrote:
Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Qu'est-ce que tu entends par "le type d'encodage par défaut"? Si c'est
l'encodage dans lequel sont écrites les constantes chaine dans ton script,
voir la réponse de Guillaume. Si c'est l'encodage qui sera automatiquement
utilisé lorsque tu passes des chaines unicode à des fonctions qui
attendent des chaines "normales", la réponse est plus compliquée:
- la fonction qui fait ça est setdefaultencoding dans le module sys (soit
dit en passant, ça n'était pas vraiment difficile à trouver, le nom étant
vraiment celui qu'on attend; un petit tour dans l'index du Library
Reference et tu l'aurais trouvé tout de suite...)
- MAIS on ne peut pas l'utiliser comme on veut: vu que l'encodage n'est
pas censé changer à tout bout de champ, cette fonction est censée etre
appelée uniquement dans un script du personnalisation au niveau site (cf.
http://docs.python.org/lib/module-site.html). En dehors d'un tel module,
le nom n'est plus disponible dans le module sys et la fonction ne peut
plus etre appelée.
Par ailleurs, en règle générale, utiliser cette fonction n'est pas une
bonne idée. Python arrive en général assez bien à deviner quel encodage
par défaut il peut utiliser, et meme s'il n'y arrive pas, se reposer sur
l'encodage par défaut pour ne pas encoder soi-meme ses chaines comme ça va
bien quand on en a besoin aura très souvent des conséquences... disons
surprenantes...
Si tu nous expliques pourquoi tu crois avoir besoin de faire ça, peut-etre
qu'on pourra mieux t'aider à comprendre comment t'en passer ;-)
Merci. Je pense que ceci répond à ma question. Mon problème plus précis est
le suivant :
Je saisi des chaînes de caractères dans une interface (wxPython) et je met
le résultat dans une
base de données. La base de données n'accepte que des chaînes normale et wx
me renvoie
une chaîne où les caractères accentués sont remplacés par des x.. ou alors
une chaîne unicode
(selon la version de wx installée). Ensuite, je relis la base et je met le
résultat dans l'interface ou
l'on voit les accents remplcés par des x..
En fait, je pense que c'est un problème trivial pour ceux qui maîtrisent
l'unicode, ce qui n'est pas
mon cas. RTFM allez vous me dire. C'est ce que j'applique mais sans trop de
réussite dans ce cas.
HTH quand meme
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17;8(%,5.Z65\'*9--56l7+-'])"
"Eric Brunel" a écrit dans le message de news:On Tue, 26 Apr 2005 12:47:09 +0200, Olivier Ravard
wrote:Bonjour à tous,
Je voudrais savoir quelle est la fonction sous python qui permet
de définir le type d'encodage par défaut de python.
Qu'est-ce que tu entends par "le type d'encodage par défaut"? Si c'est
l'encodage dans lequel sont écrites les constantes chaine dans ton script,
voir la réponse de Guillaume. Si c'est l'encodage qui sera automatiquement
utilisé lorsque tu passes des chaines unicode à des fonctions qui
attendent des chaines "normales", la réponse est plus compliquée:
- la fonction qui fait ça est setdefaultencoding dans le module sys (soit
dit en passant, ça n'était pas vraiment difficile à trouver, le nom étant
vraiment celui qu'on attend; un petit tour dans l'index du Library
Reference et tu l'aurais trouvé tout de suite...)
- MAIS on ne peut pas l'utiliser comme on veut: vu que l'encodage n'est
pas censé changer à tout bout de champ, cette fonction est censée etre
appelée uniquement dans un script du personnalisation au niveau site (cf.
http://docs.python.org/lib/module-site.html). En dehors d'un tel module,
le nom n'est plus disponible dans le module sys et la fonction ne peut
plus etre appelée.
Par ailleurs, en règle générale, utiliser cette fonction n'est pas une
bonne idée. Python arrive en général assez bien à deviner quel encodage
par défaut il peut utiliser, et meme s'il n'y arrive pas, se reposer sur
l'encodage par défaut pour ne pas encoder soi-meme ses chaines comme ça va
bien quand on en a besoin aura très souvent des conséquences... disons
surprenantes...
Si tu nous expliques pourquoi tu crois avoir besoin de faire ça, peut-etre
qu'on pourra mieux t'aider à comprendre comment t'en passer ;-)
Merci. Je pense que ceci répond à ma question. Mon problème plus précis est
le suivant :
Je saisi des chaînes de caractères dans une interface (wxPython) et je met
le résultat dans une
base de données. La base de données n'accepte que des chaînes normale et wx
me renvoie
une chaîne où les caractères accentués sont remplacés par des x.. ou alors
une chaîne unicode
(selon la version de wx installée). Ensuite, je relis la base et je met le
résultat dans l'interface ou
l'on voit les accents remplcés par des x..
En fait, je pense que c'est un problème trivial pour ceux qui maîtrisent
l'unicode, ce qui n'est pas
mon cas. RTFM allez vous me dire. C'est ce que j'applique mais sans trop de
réussite dans ce cas.
HTH quand meme
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17;8(%,5.Z65'*9--56l7+-'])"
Traiter l'Unicode est bien plus simple qu'il n'y parait.
Traiter l'Unicode est bien plus simple qu'il n'y parait.
Traiter l'Unicode est bien plus simple qu'il n'y parait.
Traîter l'Unicode est bien plus simple qu'il n'y parait. Faut pas s'en
faire une montagne. En fait, ce n'est pas plus compliqué que de manipuler
des chaînes 8 bits.
La plupart des frameworks modernes encouragent l'utilisation de l'Unicode
pour faciliter la localisation des applications.
Pour la base de données, le plus simple est d'utiliser un SGBDR qui
accepte de travailler directement en Unicode plutôt qu'avoir à s'emm... à
recoder les textes en latin1 (par exemple) pour chaque requête.
HTH quand meme
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17;8(%,5.Z65'*9--56l7+-'])"
Traîter l'Unicode est bien plus simple qu'il n'y parait. Faut pas s'en
faire une montagne. En fait, ce n'est pas plus compliqué que de manipuler
des chaînes 8 bits.
La plupart des frameworks modernes encouragent l'utilisation de l'Unicode
pour faciliter la localisation des applications.
Pour la base de données, le plus simple est d'utiliser un SGBDR qui
accepte de travailler directement en Unicode plutôt qu'avoir à s'emm... à
recoder les textes en latin1 (par exemple) pour chaque requête.
HTH quand meme
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17;8(%,5.Z65\'*9--56l7+-'])"
Traîter l'Unicode est bien plus simple qu'il n'y parait. Faut pas s'en
faire une montagne. En fait, ce n'est pas plus compliqué que de manipuler
des chaînes 8 bits.
La plupart des frameworks modernes encouragent l'utilisation de l'Unicode
pour faciliter la localisation des applications.
Pour la base de données, le plus simple est d'utiliser un SGBDR qui
accepte de travailler directement en Unicode plutôt qu'avoir à s'emm... à
recoder les textes en latin1 (par exemple) pour chaque requête.
HTH quand meme
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17;8(%,5.Z65'*9--56l7+-'])"