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 :

inverser une chaine.


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 144
    Par défaut inverser une chaine.
    Bonjour,
    je (re)debute en python et je bloque sur des choses qui me paraissent simple dans d'autres langages
    exemple:

    Il s'agit d'inverser une chaine
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    def inverse(ch):
     
    ??????????
     
    phrase = ("fait chaud aujourd'hui")
    print(inverse(phrase))
    je sais c'est basique mais je bloque
    Merci pour votre aide

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 144
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
        ch1 = "abcde"
        ch2 = ""
        i = len(ch1) - 1 #index du dernier caractere de ch1
        while i >= 0:
            ch2 += ch1[i]#on ajoute/concatène un caractere de ch1 (en partant de la fin) a ch2
            i -= 1
        return ch2
    je comprends cela mais comment en faire un def?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 144
    Par défaut
    Comme cela peut etre?
    Je poste un peu vite non?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    def inverse(ch):
     
        ch1 = ch
        ch2 = ""
        i = len(ch1) - 1 #index du dernier caractere de ch1
        while i >= 0:
            ch2 += ch1[i]#on ajoute/concatène un caractere de ch1 (en partant de la fin) a ch2
            i -= 1
        return ch2
    phrase="il fait chaud"
    print(inverse(phrase))

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,
    Si vous débutez en programmation avec Python, vous pouvez écrire ça avec des boucles:
    • /for/ et /while/
    • une fonction récursive

    Ce sont de bons exercices a faire quelque soit le langage.

    Si vous débutez en Python, un /str/ étant un (objet de type) /slice/, on écrira:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    phrase="il fait chaud"
    print(phrase[::-1])
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Expert confirmé

    Avatar de deusyss
    Homme Profil pro
    Expert Python
    Inscrit en
    Mars 2010
    Messages
    1 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Expert Python
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 659
    Par défaut
    wiztricks,

    pourrais tu nous expliquer plus en détail le "phrase[::-1]".

    je ne connais pas cette notation. Je voit bien le résultat, ce qui m'intrigue c'est le "::".

    ":-1" aurait simplement renvoyer la phrase sans la dernière lettre, "::" renvoie simplement la phrase, alors que le ::-1 inverse le tout.

    merci de ton retour

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    Que dire? C'est une fonctionnalité qui existe depuis 2.4. Je n'ai pas retrouve ces cas d'utilisations dans la documentation récente, mais Google retrouve cela.

    De toutes façons, on sera toujours surpris par la puissance des fonctionnalités de base de Python et on ne pensera pas toujours a les utiliser (moi y compris).
    C'est la vie.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#] Comment inverser une chaine de caractères ?
    Par just1980 dans le forum Contribuez
    Réponses: 6
    Dernier message: 01/05/2011, 20h35
  2. [WD11] Inverser une chaine de caractère
    Par Redg9 dans le forum WinDev
    Réponses: 4
    Dernier message: 31/03/2010, 20h29
  3. recursivité :inverser une chaine de caractères
    Par Echap dans le forum Débuter
    Réponses: 20
    Dernier message: 14/05/2009, 19h43
  4. Inverser une chaîne de caractères
    Par yiuyiu dans le forum MATLAB
    Réponses: 4
    Dernier message: 09/08/2007, 10h13
  5. Réponses: 10
    Dernier message: 28/02/2007, 00h00

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