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 :

Projet Python LICENCE 2


Sujet :

Python

  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1
    Par défaut Projet Python LICENCE 2
    Bonjour, désolé de vous déranger! On a un projet à faire en programmation avec une amie (L2 de Licence Mathematiques) et on est vraiment perdue. Si vous avez le temps de nous filer un coup de main ca serait vraiment sympa, on sait meme pas par ou commencer. Merci beaucoup

    Ecrire un programme opfile qui permet de réaliser diverses opérations de manipulation sur un fichier (ou une liste de fichiers) dont le nom est entré par l'utilisateur. Le principe de fonctionnement est similaire à celui du programme statfile (cf. exercice B5) dans lequel l'opération de traitement était spécifiée sous la forme d'un mot-clé dans la commande saisie par l'utilisateur. Néanmoins, à la différence de statfile, certaines opérations ont besoin d'un ou deux arguments optionnels supplémentaires (spécifiés à l'aide du signe '='), que le programme doit pouvoir récupérer correctement avant d'appliquer le traitement demandé à la liste de fichiers. Voici les opérations qui doivent être réalisables :

    num : afficher le contenu de chaque fichier de la liste en numérotant ses lignes
    head=n : lister les n premières lignes de chaque fichier (par défaut, lorsque n n'est pas spécifié, on prend la valeur 10)
    tail=n : lister les n dernières lignes de chaque fichier (par défaut, n=10)
    unique : afficher le contenu de chaque fichier de la liste en ne gardant que la première occurrence pour chaque ligne figurant en multiples exemplaires
    incsort : lister chaque fichier en triant les lignes par ordre lexical croissant
    decsort : lister chaque fichier en triant les lignes par ordre lexical décroissant
    count : compter le nombre de lignes, de mots et de caractères de chaque fichier
    rilex : calculer le coefficient de richesse lexical de chaque fichier (cf. exercice B6 pour la définition de ce coefficient)
    histo=n : afficher le nombre d'occurrences des n mots les plus utilisés de chaque fichier (par défaut, n=10 )
    find=str : afficher toutes les lignes contenant la chaîne de caractères str pour chacun des fichiers (par défaut, str=' ' )
    replace=str1,str2 : afficher le contenu de chaque fichier, en remplaçant toutes les occurrences de la chaîne str1 par la chaîne str2)
    et bien sûr, toute autre opération qui vous semble intéressante à rajouter...

    Pour toutes les opérations qui affichent le contenu (ou une partie) des fichiers, il est souhaitable de séparer le contenu des différents fichiers par une ligne de tirets dans laquelle on incruste le nom du fichier à venir (cf. exemple ci-dessous). Enfin, de manière optionnelle, on peut autoriser l'exécution de plusieurs opérations en chaîne, en spécifiant une ligne de commande où les opérateurs sont séparés par des virgules.

    Exemple d'exécution :

    ================================================================================
    OPFILE : perform miscellaneous operations on a list of text files
    ================================================================================
    Note : enter an empty line to stop the interaction loop
    <> Enter command : rilex toto.txt titi.txt
    toto.txt : 0.1233333
    titi.txt : 0.7125
    <> Enter command : head=2 toto.txt titi.txt
    --- toto.txt -------------------------------------------------------------------
    Ceci est la première ligne du fichier toto.txt
    Ceci est la deuxième ligne du fichier toto.txt
    --- titi.txt -------------------------------------------------------------------
    Ceci est la première ligne du fichier titi.txt
    Ceci est la deuxième ligne du fichier titi.txt
    --------------------------------------------------------------------------------
    <> Enter command :

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 060
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 060
    Par défaut
    Oui, ça fait pas mal de boulot, t'attends pas à ce qu'on te fasse le travail, mais on peut guider.

    Commençons par afficher les fichiers de la liste...

    Pour ouvrir un fichier on peut utiliser l'expression with open.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    with open('monfichier.txt', 'r') as f:
        for line in f:
            print(line)
    Là on affiche ligne par ligne le fichier, et intentionnellement sans les numéros de lignes, à toi de rajouter simplement un compteur à chaque ligne...

    Tu peux aller voir du côté du formatage des chaînes de caractères avec format(...)

    À toi de rechercher des exemples sur le net pour t'aider.

    Bon courage.

Discussions similaires

  1. Qu'attendez-vous d'un outil de documentation de projets Python ?
    Par rambc dans le forum Général Python
    Réponses: 8
    Dernier message: 10/09/2010, 00h05
  2. Devellopeur pour Projet Python
    Par ju_bicycle dans le forum Général Python
    Réponses: 0
    Dernier message: 24/03/2010, 16h36
  3. packager un projet python
    Par ad1lux dans le forum Déploiement/Installation
    Réponses: 1
    Dernier message: 22/04/2008, 12h17
  4. taille d'un projet Python
    Par planeur2007 dans le forum Général Python
    Réponses: 4
    Dernier message: 05/06/2007, 15h14

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