Partage
  • Partager sur Facebook
  • Partager sur Twitter

Changer un caractère d'une string

    2 octobre 2012 à 19:49:20

    Bonsoir :)

    J'aimerais pouvoir changer un caractère de ma chaine de caractère.
    Par exemple j'aimerais que ma variable 'a' qui contient les lettre abcd contienne ab*d.

    J'aimerais en fait changer le c en *

    J'avais penser a dire que a[2] = "*"

    Mais cela ne marche pas... :(



    Pouvez vous m'aidez ?
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      2 octobre 2012 à 19:50:29

      Salut,

      a.replace('c', '*')
      
      • Partager sur Facebook
      • Partager sur Twitter
        2 octobre 2012 à 19:58:57

        http://msdn.microsoft.com/fr-fr/librar [...] m.string.aspx

        Si tu veux supprimer un caractère particulier, c'est Remvove(Int32) et Insert().

        Sinon Replace(Char, Char) ou Replace(String, String) tout court.


        Oups... Désolé, j'avais vu C#/.NET sur la tooltip de la page d'accueil du SdZ, pas Python. Bon de toute façon, j'imagine que les string sont aussi immuables en Python. :D
        • Partager sur Facebook
        • Partager sur Twitter
        "Il est impossible pour un homme d'apprendre ce qu'il croit déjà connaître"
          2 octobre 2012 à 20:02:30

          Oui mais si j'utilise 'replace", c'est tout les caractères c qui vont être remplacés ?

          Parce que j'aimerais ne remplacer qu'un seul caractère :)
          • Partager sur Facebook
          • Partager sur Twitter
            2 octobre 2012 à 20:22:19

            >>> "abcdeabcde".replace('c','*',1)
            'ab*deabcde'
            • Partager sur Facebook
            • Partager sur Twitter

            Python c'est bon, mangez-en. 

              2 octobre 2012 à 21:07:12

              Je te remercie :) J'ai réussi mon programme ^^

              Juste une petite question ? Qu'est ce que replace ? Une fonction ?
              • Partager sur Facebook
              • Partager sur Twitter
                2 octobre 2012 à 21:21:41

                Citation : BubbleGom

                Juste une petite question ? Qu'est ce que replace ? Une fonction ?


                Plus précisément une méthode de la classe str, qui renvoie un nouvel objet dans lequel est effectué le remplacement (les str sont immutables).
                • Partager sur Facebook
                • Partager sur Twitter
                  4 octobre 2012 à 13:39:51

                  Hello BubbleGom,

                  plutôt que de répondre à la question (déjà résolue), je donne un petit conseil :

                  quand tu as un problème avec une structure de donnée, fait une recherche sur le site officiel Python pour regarder dans la documentation ce que python a à t'offrir pour ton problème (surtout ce genre de problème).

                  Un simple "python string" dans google t'aurait mis sur la piste.

                  Ensuite sache que l'interpréteur python est le meilleur ami de l'apprenti programmeur. Des fonctions comme dir() et help() sont très utiles dedans.

                  dir(str), où on trouve str.replace parmis d'autres (car il n'y a plusieurs façons de résoudre ce problème à mon sens).

                  help(str.replace), qui t'en donne une description :

                  Help on method_descriptor:

                  replace(...)
                  S.replace(old, new[, count]) -> str

                  Return a copy of S with all occurrences of substring
                  old replaced by new. If the optional argument count is
                  given, only the first count occurrences are replaced.


                  C'est un réflexe qu'il faut avoir.

                  by
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Changer un caractère d'une string

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown