IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

pymssql: convertir un champ avec un chaine caract�re avec �blabla \x96 blabla�


Sujet :

Python

  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    291
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2005
    Messages : 291
    Par d�faut pymssql: convertir un champ avec un chaine caract�re avec �blabla \x96 blabla�
    Bonjour,
    j'ai une variable dans une base donn�e avec �blabla � blabla�. Lorsque je suis dans python et que je fais un print de la variable je vois
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     print ('row[sql_attr]')
    'SU Finance \x96 Controlling'
    Je dois comparer mais deux cha�nes identique mais l'une 'blabla \x96 blabla� et l'autre 'blabla � blabla�. Elles sont identique mais badaoum.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     if row[sql_attr] != result_attr:
      print('ok')
    Bien s�r cela ne fonctionne pas, je n'ai pas envie de faire un 'seanch and replace'.

    Merci de votre aide et proposition.

  2. #2
    Membre tr�s actif

    Homme Profil pro
    Bidouilleur
    Inscrit en
    Avril 2016
    Messages
    721
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Bidouilleur

    Informations forums :
    Inscription : Avril 2016
    Messages : 721
    Billets dans le blog
    1
    Par d�faut
    Salut,

    Peut-�tre un rapport avec l'encodage de tes donn�es dans ta table, encodage par d�faut de ta bdd ? Table ? Colonne ?
    Encodage des valeurs ayant �t� ins�r�es ?
    Encodage de ton script python ?

  3. #3
    Membre �clair�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    291
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2005
    Messages : 291
    Par d�faut
    C'est exactement �a, j'ai mis le champ en nvarchar dans sql server et tout est ok.
    Mais j'ai une question subsidiaire, j'aimerai savoir comme je peux convertir ce type chaine.

    'blabla \x96 blabla' vers 'blabla - blabla'.
    fonctionne 2.7 mais pas en 3.6.4,

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    >>> x = "abc" + chr(150)
    >>> x
    'abc\x96'
    x.decode("utf-8")
    Traceback (most recent call last):
      File "<pyshell#9>", line 1, in <module>
        x = x.decode("utf-8")
    AttributeError: 'str' object has no attribute 'decode'

    Merci

  4. #4
    Expert confirm�
    Avatar de tyrtamos
    Homme Profil pro
    Retrait�
    Inscrit en
    D�cembre 2007
    Messages
    4 486
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Retrait�

    Informations forums :
    Inscription : D�cembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par d�faut
    Bonjour,

    C'est normal que x.decode(...) ne marche pas sous Python 3, parce qu'� l'ex�cution, x est DEJA en unicode.

    Mais rien n'emp�che de faire le remplacement en unicode:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    y = x.replace("\x96", '-')
    et si n�cessaire d'encoder en 'utf-8' (on obtient alors une chaine de bytes):


Discussions similaires

  1. [Batch] Probl�me de chaine caract�re avec espace
    Par dudux2 dans le forum Scripts/Batch
    R�ponses: 14
    Dernier message: 31/08/2017, 18h35
  2. R�ponses: 3
    Dernier message: 04/05/2014, 14h27
  3. R�ponses: 1
    Dernier message: 11/06/2012, 23h16
  4. R�ponses: 8
    Dernier message: 04/03/2012, 09h28
  5. Traitement des chaines caract�res avec un s�parateur
    Par Lolitaaa dans le forum G�n�ral Java
    R�ponses: 2
    Dernier message: 09/07/2010, 12h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo