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 :

Extraire le nom d'un répertoire


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    bm
    bm est déconnecté
    Membre extrêmement actif

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Billets dans le blog
    6
    Par défaut Extraire le nom d'un répertoire
    bonjour ,

    Avant de lancer un cron , je veux extraire le nom relatif de '2014' et 'dec'
    de l'arborescence .

    Le cron exécute /home/pi/rspi/2014/dec/courant.py , tous les jours de décembre

    C'est pour passer les paramètres dans la ligne suivante avant un transfert ftp :

    file = open ( ' /home/pi/rspi/'+an+'/'+mois+'/'+fichier,'rb') // fichier est une data txt

    os.path.dirname extrait /rspi/2014/dec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    import os
     
    dir_path = os.path.dirname(os.path.abspath(__file__))
    print(dir_path)
    an=dir_path[14:18] // extrait '2014'
    Mais 14:18 , cela fait 5 caractères , et il y a blocage après dans le codage

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 062
    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 062
    Par défaut
    Difficile à comprendre votre problème, à ce que j'en ai compris, vous souhaitez retirer l'année et le mois détectable dans une chaîne de caractères représentant le chemin absolu d'un fichier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    >>> f = '/home/pi/rspi/2014/dec/courant.py'
    >>> f.split('/')
    ['', 'home', 'pi', 'rspi', '2014', 'dec', 'courant.py']
    >>> _, _, _, _, year, month, _ = f.split('/')
    >>> year
    '2014'
    >>> month
    'dec'
    Cela convient-il ?

  3. #3
    bm
    bm est déconnecté
    Membre extrêmement actif

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Billets dans le blog
    6
    Par défaut
    ok , merci
    dir_path va bien aussi et c'est pour comparer les méthodes

    Le cron ne se déclenche que en fin de journée (1fois)
    C'est par rapport au chemin absolu que le cron ne fonctionne pas
    En mode console , il n'y a jamais de problème sérieux

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 738
    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 738
    Par défaut
    Salut,

    Si "cron" sait lancer "/home/pi/rspi/2014/dec/courant.py" , tous les jours de décembre, il pourrait aussi lancer le script "/home/pi/courant.py" avec en paramètre "rspi" "2014/dec":
    • "rspi" : le répertoire de base ou trouver les fichier à transférer,
    • "2014/dec" : le mois courant

    Ceci dit, si "cron" connaît la date, un programme Python le peut aussi via le module datetime:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    >>> from datetime import date
    >>> today = date.today()
    >>> today.year
    2014
    >>> today.month
    12
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    bm
    bm est déconnecté
    Membre extrêmement actif

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Billets dans le blog
    6
    Par défaut
    Demain sera un autre jour .



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    import os
     
    dir_path = os.path.dirname(os.path.abspath(__file__))
    print(dir_path)
    an=dir_path[14:18] // extrait '2014'
    os.path.dirname , est correct en décembre [Résolu]

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

Discussions similaires

  1. [OL-2010] Extraire des informations dans le nom d'un répertoire
    Par marycaLou dans le forum VBA Outlook
    Réponses: 4
    Dernier message: 03/02/2015, 14h56
  2. Extraire le nom de domaine d'une URL
    Par -JRM- dans le forum ASP
    Réponses: 2
    Dernier message: 24/01/2006, 11h04
  3. Extraire le nom d'un fichier de son chemin
    Par azopei dans le forum Access
    Réponses: 6
    Dernier message: 21/01/2006, 17h29
  4. extraire le nom d'un fichier dans une chaine sauf le car -
    Par digger dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 13/12/2005, 00h02
  5. Extraire un nom d'une chaine de caractere
    Par iamspacy dans le forum Linux
    Réponses: 4
    Dernier message: 03/05/2004, 21h34

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