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 :

[String] Alterner majuscules et minuscules


Sujet :

Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 10
    Points
    10
    Par défaut [String] Alterner majuscules et minuscules
    Bonjour à tous !
    Je débute l'apprentissage de Python en cours et je dois créer un programme qui alterne majuscules et minuscules dans une chaîne de caractères entrée par l'utilisateur. Nous avons déjà fait plusieurs TP sur les chaînes mais je ne sais pas comment modifier une lettre sur deux dans une chaîne. Je pensais utiliser len() mais je ne vois pas comment l'utiliser dans mon cas.

    D'avance merci !

    SkullZhunter

  2. #2
    Membre éprouvé
    Homme Profil pro
    Aucune activité
    Inscrit en
    Novembre 2011
    Messages
    505
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Aucune activité

    Informations forums :
    Inscription : Novembre 2011
    Messages : 505
    Points : 926
    Points
    926
    Par défaut
    Citation Envoyé par SkullZhunter Voir le message
    Je débute l'apprentissage de Python en cours et je dois créer un programme qui alterne majuscules et minuscules dans une chaîne de caractères entrée par l'utilisateur. Nous avons déjà fait plusieurs TP sur les chaînes mais je ne sais pas comment modifier une lettre sur deux dans une chaîne. Je pensais utiliser len() mais je ne vois pas comment l'utiliser dans mon cas.
    Bonjour,
    Après plusieurs TP il doit être possible de recopier une chaîne caractère par caractère. Non?
    Avec ce processus, il n'est pas très compliqué, ayant un caractère, de le mettre en majuscule ou en minuscule. Non?
    Ces deux fonctions doivent être connues.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    >>> phrase = "Un beau jour, ou peut-être une nuit, Près d'un lac je m'étais endormie"
    >>> nv_phrase = ""
    >>> for car in phrase:
    	nv_phrase = nv_phrase + "-" + car
     
     
    >>> print(nv_phrase)
    -U-n- -b-e-a-u- -j-o-u-r-,- -o-u- -p-e-u-t---ê-t-r-e- -u-n-e- -n-u-i-t-,- -P-r-è-s- -d-'-u-n- -l-a-c- -j-e- -m-'-é-t-a-i-s- -e-n-d-o-r-m-i-e
    >>>
    Ou bien:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    >>> nv_phrase = ""
    >>> for ind in range(len(phrase)):
    	nv_phrase = nv_phrase + "~" + phrase[ind]
     
     
    >>> print(nv_phrase)
    ~U~n~ ~b~e~a~u~ ~j~o~u~r~,~ ~o~u~ ~p~e~u~t~-~ê~t~r~e~ ~u~n~e~ ~n~u~i~t~,~ ~P~r~è~s~ ~d~'~u~n~ ~l~a~c~ ~j~e~ ~m~'~é~t~a~i~s~ ~e~n~d~o~r~m~i~e
    >>>
    Enfin, les deux méthodes pour convertir des majuscules en minuscules (et vice versa):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    >>> car = "a"
    >>> print(car.upper())
    A
    >>> car = "A"
    >>> print(car.lower())
    a
    >>>
    Maintenant, il devrait être facile de convertir soit en majuscule, soit en minuscule!

    PS: penser à utiliser une variable qui se modifie à chaque cycle (booléen ou compteur pair/impair).
    par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    >>> for ind in range(10):
    	if ind%2==0:
    		print(0, end="")
    	else:
    		print(1, end="")
     
     
    0101010101
    >>>
    Mais tout ceci devrait être connu!

    Clodion

  3. #3
    Membre averti Avatar de cervo
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 220
    Points : 388
    Points
    388
    Par défaut

    Voici un bout de code qui peut faire ton bonheur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    phrase = "Je veux alterner en majuscule et minuscule"
    newPhrase = ""
     
    for i in range(len(phrase)):
        cpt = i
        lettre = phrase[i]
        # J'ai décidé que la 1ere lettre de la phrase soit en minuscule donc je change la lettre suivante et j'alterne
        # si tu veux l'inverse tu remplace le 1 par 0 
        if (cpt % 2) == 1: 
            lettre = lettre.upper()
        newPhrase = newPhrase + lettre
     
     
    print(newPhrase)
    et tu auras çà en résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jE VeUx aLtErNeR En mAjUsCuLe eT MiNuScUlE
    j'espère ne pas m'être trompé sur ce que tu voulais !
    Toute chose dépend de la valeur qu'on lui attribue !

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    En Python(*) çà pourrait s'écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> s = "Je veux alterner en majuscule et minuscule"
    >>> ''.join(x + y for x, y in zip(s[0::2].upper(), s[1::2]))
    'Je vEuX AlTeRnEr eN MaJuScUlE Et mInUsCuLe'
    >>>
    (*) le PO doit apprendre à suer avec les boucles.
    Les autres peuvent peut être (re)découvrir séquences, zip,...

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

Discussions similaires

  1. Problème comparer un string majuscule vs minuscule
    Par letal dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 13/01/2014, 12h23
  2. convertir un string en majuscule/minuscule
    Par kayenne77 dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 30/07/2009, 11h48
  3. transformer majuscules en minuscules dans un String
    Par barbiche dans le forum Langage
    Réponses: 4
    Dernier message: 28/03/2007, 10h42
  4. Différence entre majuscule et minuscule dans une requête
    Par Asdorve dans le forum Langage SQL
    Réponses: 2
    Dernier message: 23/06/2004, 14h42
  5. [RICHEDIT] -> Majuscule et Minuscule ?
    Par MaTHieU_ dans le forum C++Builder
    Réponses: 2
    Dernier message: 18/01/2004, 12h33

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