Bonjour,

j'ai un petit souci avec mon programme.
Je saisie une date de type string et je voudrais verifier qu'elle soit correcte en fonction des mois ( eviter d'avoir kke chose comme 31/02/09 par exemple )

j'ai essayé de convertir ma string en date avec la fonction strftime et ca marche pas
j'ai essayé avec le code ci dessous et il y a aussi des bugs. Ca fait des heures que je suis bloquée sur ce pbm et du coup j'ai plus d'idee. Si quelqu'un pouvait m'aider. Merci

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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#### Date d'Envoi ####
    print "La date d'envoi (JJ/MM/AA) : "
    date = raw_input()
    print date
 
    while(len(date) <> 8):
        print "Veuillez respecter les 8 caracteres demandes"
        print "La date d'envoi (JJ/MM/AA) : "
        date = raw_input()
    else:
        while(date[2] <> '/' or date[5] <> '/'):
            #controle des nombres jours et mois
            print "Veuillez respecter le format date JJ/MM/AA requis"
            print "La date d'envoi (JJ/MM/AA) : "
            date = raw_input()
        else:
            # verifier la saisie de chiffres
            jour = int(date[:2])
            mois = int(date[3:5])
            annee = int(date[6:])
 
            while mois > 13 or mois < 0:
                print "Erreur: Mois Invalide"
                date = raw_input()
            if mois in (1, 3, 5, 7, 8, 10, 12):
                while jour > 31:
                    print "Erreur: Le jour ne peut contenir que 31 jours."
                    print "Veuillez resaisir le jour: "
                    date = raw_input()
            elif mois == 2:
                if annee % 4 == 0:
                    while jour > 30:
                        print "Erreur: Le jour ne peut contenir que 29 jours."
                        print "Veuillez resaisir le jour: "
                        jour = raw_input()
                else:
                    while jour > 29:
                        print "Erreur: Le jour ne peut contenir que 28 jours."
                        date = raw_input()
            else:
                while jour > 31:
                    print "Erreur: Le jour ne peut contenir que 30 jours."
                    date = raw_input()