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 :

Lire un fichier texte et trier ce fichier


Sujet :

Python

  1. #21
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Oui, j'avais bien évidemment aussi cette solution mais le re était tellement plus... élégant..
    Mouai, pour le coup ça passe, pour une fois que c'est pas un truc incompréhensible si tu n'as pas la doc sous les yeux.

    Je ne t'ai pas déjà dit que la liste est inutile quand le tuple suffit???
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> for c in (',', "'", '!', '’', '-', '—', '.'):
    	chap = chap.replace(c, ' ')

    Et puis, une string étant déjà itérable...
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> for c in ",\"!'-.":
    	chap = chap.replace(c, ' ')

    Et donc pour finir
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> for c in string.punctuation:
    	chap = chap.replace(c, ' ')
    Ah beh oui chui con un string suffit et le tuple c'est plus mieux que la liste...
    10 ans sans utilisé le tuple autre part que pour des coordonnées, ça va être dur de me corriger ! (Surtout que mes codes ressemblent à ça)
    C'est moi où le tuple est mésestimé quand on apprend à programmer sur Internet ?
    Sinon string.punctuation n'a pas tous les caractères à remplacer ! Na !

  2. #22
    Membre expérimenté
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 899
    Points : 1 581
    Points
    1 581
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par LeNarvalo Voir le message
    C'est moi où le tuple est mésestimé quand on apprend à programmer sur Internet ?
    Bonjour,
    Je ne me souviens pas avoir abordé ce sujet lors de mes différentes lectures/tutoriels/mooc sur python...
    C'est qu'en lisant les posts de Sev@r qui régulièrement intervient sur ce sujet, que j'ai pris en considération qu'il est préférable en termes de performance d'utiliser un tuple au lieu d'une liste (lorsque bien sûr des données traitées sont non mutables)

  3. #23
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 726
    Points : 31 046
    Points
    31 046
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Hominidé Voir le message
    C'est qu'en lisant les posts de Sev@r qui régulièrement intervient sur ce sujet
    Déjà ça me parait logique. Un truc A qui ne peut faire que X me semble naturellement plus léger qu'un truc B qui peut faire X+Y. Toutefois Swinnen le dit lui-aussi (non, plutôt lui il le dit et c'est moi qui le dit aussi ) en page 173 de son tuto P3 "Vous comprendrez l’utilité des tuples petit à petit. Signalons simplement ici qu’ils sont préférables aux listes partout où l’on veut être certain que les données transmises ne soient pas modifiées par erreur au sein d’un programme. En outre, les tuples sont moins « gourmands » en ressources système (ils occupent moins de place en mémoire, et peuvent être traités plus rapidement par l’interpréteur)."

    Ceci dit, le tuto de Swinnen commence par expliquer les listes en long et en large (en page 63) puis bien après explique les tuples en page 172. Donc fatalement les listes sont plus implantées dans l'esprit d'un débutant. Moi aussi à mes débuts je ne passais que par des listes et c'est bien plus tard quand j'ai mieux connu le tuple que j'ai repris tous mes codes et remplacé partout où je le pouvais les listes par des tuples.

    Pareil, je viens de voir qu'il m'arrive assez souvent de faire des trucs comme xxx=tuple(fct(x) for x in data) alors qu'on peut écrire xxx=tuple(map(fct, data)). Peut-être un autre truc à corriger dans mes codes...

  4. #24
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 362
    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 362
    Points : 36 894
    Points
    36 894
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Maintenant entre boucler n fois (avec chaque fois toute la chaine qui est traitée) ou passer par un module, fut-il de l'artillerie lourde
    Plutôt qu'écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> for c in string.punctuation:
    	chap = chap.replace(c, ' ')
    on pourrait "filtrer" les caractères qu'on veut:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    r = ''
    for c in mot:
         c = c.lower()
         if 'a' <= c <= 'z':
            r += c
    Bon ok, çà marche bien parce que le texte est "anglais" et que l'ASCII suffit pour le représenter.

    - W

  5. #25
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 726
    Points : 31 046
    Points
    31 046
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    r = ''
    for c in mot:
         c = c.lower()
         if 'a' <= c <= 'z':
            r += c
    r="".join(c for c in mot.lower() if 'a' <= c <= 'z')
    Mais sinon je ne sais même plus pourquoi on filtre (et ici manifestement on transforme aussi) le texte initial...

  6. #26
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 362
    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 362
    Points : 36 894
    Points
    36 894
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Mais sinon je ne sais même plus pourquoi on filtre (et ici manifestement on transforme aussi) le texte initial...
    Relire la question 2 de l'énoncé.
    Si on regarde un peu comment est écrit le texte, çà risque d'être un peu plus compliqué que çà pour récupérer les "mots".

    - W

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/12/2005, 15h57
  2. [Applet] lire un fichier texte
    Par lebesnec dans le forum Applets
    Réponses: 2
    Dernier message: 07/07/2005, 10h09
  3. Réponses: 1
    Dernier message: 24/11/2004, 16h54
  4. [Fichier] Lire un fichier texte long
    Par _Eric_ dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 18/08/2004, 15h22
  5. Réponses: 2
    Dernier message: 26/05/2004, 17h53

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