Bonjour,

Dans mon application python, je souhaite vérifier que la date de création d'un répertoire est supérieure à une date t.
Plus précisément je veux attendre que ce dossier soit créé avant de continuer mon programme.
Pour cela, j'ai écrit le code suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import os, time
 
# Attente de la creation du dossier de resultats
dateNow = time.localtime()   # Instant t. Je veux que mon repertoire soit cree apres cet instant
etatRepResult = False
attente = 0
 
while not etatRepResult:
    # Verifie que le dossier de resultat existe
    if os.path.isdir(self.session.simu.rep_resultats):
        # Calcul de la date de creation du dossier
        dateStr = time.ctime(os.path.getctime(self.session.simu.rep_resultats))
        dateCreaDossier = time.strptime(dateStr)
 
        # Si le dossier de resultats a ete cree apres dateNow, la simulation a bien démarre
        if dateCreaDossier > dateNow:
            etatRepResult = True
 
    # Attente de 0.5s avant le prochain essai, jusqu'a la limite timeout
    time.sleep(0.5)
    attente += 0.5
    if attente > self.timeOut:
        startOk = False
        break;
Cependant, j'ai ce message d'erreur lorsque j'exécute le programme:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
ValueError: time data 'Wed Jun 04 09:52:39 2014' does not match format '%a %b %d %H:%M:%S %Y'
Je suis allée vérifier à quoi correspondent les lettres en "%":
%a: "Weekday as locale’s abbreviated name."
%b: "Month as locale’s abbreviated name."
%d: "Day of the month as a zero-padded decimal number."
%H: "Hour (24-hour clock) as a zero-padded decimal number."
%M: "Minute as a zero-padded decimal number."
%S: "Second as a zero-padded decimal number."
%Y: "Year with century as a decimal number."
Pour information je suis sous Linux (RedHat 5).

Tout semble bien correspondre, pourquoi le programme me dit "does not match format"?
Si quelqu'un peut m'aider à trouver ce qui ne va pas... et aussi, si vous avez des suggestions d'amélioration pour mon code, n'hésitez pas!

Merci d'avance pour votre aide!