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 :

Découpage d'une chaine de caracteres [Python 3.X]


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : novembre 2019
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Découpage d'une chaine de caracteres
    Bonsoir ,
    pouviez vous m'aider s'il vous plait a ce sujet:
    J'aimerais pouvoir découper cette chaine de caractère en 6.
    exemple:
    azertyuiopqsdfghjk
    j'aimerais la decouper sous cette forme :
    (azerty,uiopqs,dfghjk)
    hormis cet exemple j'aimerais que cela marche meme avec une très grande chaine de caractères.
    merci d'avance pour votre aide.

  2. #2
    Membre averti
    Homme Profil pro
    BTS SNIR (système numérique option info & réseau)
    Inscrit en
    mai 2017
    Messages
    301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 20
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : BTS SNIR (système numérique option info & réseau)

    Informations forums :
    Inscription : mai 2017
    Messages : 301
    Points : 363
    Points
    363
    Par défaut
    Bonjour,

    Regardez du côté de textwrap.wrap

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : novembre 2019
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par flapili Voir le message
    Bonjour,

    Regardez du côté de textwrap.wrap
    Merci, mais je n’y comprends pas trop 😅 en réalité je dois extraire des caractères issue d’un fichier txt et les traduire du morse au français. Sauf que tous les caractères se suivent ( point et tirets) et je dois pouvoir les extraire par groupe de 3 pour pouvoir les traduire.

  4. #4
    Membre émérite
    Homme Profil pro
    Inscrit en
    octobre 2011
    Messages
    2 003
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : octobre 2011
    Messages : 2 003
    Points : 2 560
    Points
    2 560
    Par défaut
    Citation Envoyé par gostravel Voir le message
    Sauf que tous les caractères se suivent ( point et tirets) et je dois pouvoir les extraire par groupe de 3 pour pouvoir les traduire.
    Par groupe de 3 ou de 6 (premier poste) ?

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : novembre 2019
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    par groupes de 3

  6. #6
    Membre émérite
    Homme Profil pro
    Inscrit en
    octobre 2011
    Messages
    2 003
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : octobre 2011
    Messages : 2 003
    Points : 2 560
    Points
    2 560
    Par défaut
    Citation Envoyé par gostravel Voir le message
    par groupes de 3
    Ben dans ce cas ton exemple du premier poste n'est pas bon ?
    J'aimerais pouvoir découper cette chaine de caractère en 6.
    exemple:
    azertyuiopqsdfghjk
    j'aimerais la decouper sous cette forme :
    (azerty,uiopqs,dfghjk)
    Sous quelle forme veux-tu récupérer le résultat ?

  7. #7
    Membre expérimenté
    Homme Profil pro
    Enseignant
    Inscrit en
    juin 2013
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : juin 2013
    Messages : 1 109
    Points : 1 500
    Points
    1 500
    Par défaut
    Comme cela ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    chaine = "azertyuiopqsdfghjklmnopqrstuvwxyz123456789é(--èè_çà"
    decoup = 3
    liste_decoup=[]
    for i in range(0,len(chaine),decoup):
        liste_decoup.append(chaine[i:i+decoup])
    print(liste_decoup)
    Le résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ['aze', 'rty', 'uio', 'pqs', 'dfg', 'hjk', 'lmn', 'opq', 'rst', 'uvw', 'xyz', '123', '456', '789', 'é(-', '-èè', '_çà']
    Pas d'aide par mp.

  8. #8
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    février 2009
    Messages
    6 221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : février 2009
    Messages : 6 221
    Points : 22 445
    Points
    22 445
    Billets dans le blog
    70
    Par défaut


    Je ne connais pas le morse, mais si je regarde le site et sa table de conversion, je vois que les caractères A-Z sont représentés par 1 (E et T) à 4 signes morses et les chiffres de 0-9 ont chacun 5 signes morses. Plus les codes de transmission.

    Je ne vois pas l'utilité du découpage en 3 signes ?

  9. #9
    Membre émérite
    Homme Profil pro
    Inscrit en
    octobre 2011
    Messages
    2 003
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : octobre 2011
    Messages : 2 003
    Points : 2 560
    Points
    2 560
    Par défaut
    Citation Envoyé par marco056 Voir le message
    Comme cela ?
    Cool, ça m'a l'air bien ça !

  10. #10
    Membre émérite
    Homme Profil pro
    Inscrit en
    octobre 2011
    Messages
    2 003
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : octobre 2011
    Messages : 2 003
    Points : 2 560
    Points
    2 560
    Par défaut
    Citation Envoyé par danielhagnoul Voir le message


    Je ne connais pas le morse, mais si je regarde le site et sa table de conversion, je vois que les caractères A-Z sont représentés par 1 (E et T) à 4 signes morses et les chiffres de 0-9 ont chacun 5 signes morses. Plus les codes de transmission.

    Je ne vois pas l'utilité du découpage en 3 signes ?
    Ouais c'est bizarre... Et au début c'était découper en 6 ensuite en 3...D'où mes questions pour clarifier...

  11. #11
    Membre averti
    Homme Profil pro
    BTS SNIR (système numérique option info & réseau)
    Inscrit en
    mai 2017
    Messages
    301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 20
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : BTS SNIR (système numérique option info & réseau)

    Informations forums :
    Inscription : mai 2017
    Messages : 301
    Points : 363
    Points
    363
    Par défaut
    Si ça vient d'un fichier pourquoi ne pas lire 3 caractères par 3 ? Et faire une sorte de table de mapping avec un dictionnaire? S'il n'y a que 2 caractères (point et tiret) par groupe de 3 ça fait pas énormément de combinaison, 23 soit 8

  12. #12
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    novembre 2010
    Messages
    2 847
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : novembre 2010
    Messages : 2 847
    Points : 7 824
    Points
    7 824
    Par défaut
    salut,

    une solution alternative :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> import re
    >>> s = 'azertyuiopqsdfghjklmnopqrstuvwxyz123456789é(--èè_çà'
    >>> re.findall('.{1,3}', s)
    ['aze', 'rty', 'uio', 'pqs', 'dfg', 'hjk', 'lmn', 'opq', 'rst', 'uvw', 'xyz', '123', '456', '789', 'é(-', '-èè', '_çà']
    Avant donc que d'écrire, apprenez à penser.
    Selon que notre idée est plus ou moins obscure, l'expression la suit, ou moins nette, ou plus pure.
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément.
                                                        - Nicolas Boileau, L'Art poétique

  13. #13
    Membre expérimenté
    Homme Profil pro
    Enseignant
    Inscrit en
    juin 2013
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : juin 2013
    Messages : 1 109
    Points : 1 500
    Points
    1 500
    Par défaut
    Il va falloir que je me penche un jour sérieusement sur les expressions régulières...
    A chaque fois que j'utilise cela, cela me paraît extrêmement obscure.
    Pas d'aide par mp.

  14. #14
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : novembre 2019
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Merci beaucoup pour vos réponses.

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

Discussions similaires

  1. Découpage d'une chaine de caractere
    Par abbd dans le forum Windows Forms
    Réponses: 2
    Dernier message: 19/02/2009, 23h43
  2. Réponses: 9
    Dernier message: 06/11/2007, 13h36
  3. Extraire un nom d'une chaine de caractere
    Par iamspacy dans le forum Linux
    Réponses: 4
    Dernier message: 03/05/2004, 22h34
  4. Réponses: 2
    Dernier message: 30/03/2004, 12h31
  5. Controler une chaine de caracteres ou d'entiers?
    Par Le druide dans le forum C
    Réponses: 6
    Dernier message: 25/09/2003, 09h48

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