Projet Python
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Projet Python



  1. #1
    ThePredator

    Projet Python


    ------

    Bonjour,

    Je suis étudiant et je dois rendre un projet mais je rencontre des difficultés pour le faire. Le but de ce projet est de faire une badgeuse. On doit pouvoir :
    - rentrer le nom de la personne et son heure d'entrée,
    - le nom de la personne ainsi que l'heure de sortie,
    - l'historique des personnes présentes dans le bâtiment,
    - l'affichage des personnes présentes dans le bâtiment à un créneau précis,
    - la durée totale passée dans le bâtiment d'une personne précise.
    J'ai commencé à faire quelque chose mais je le posterai tout à l'heure.

    En espérant recevoir votre aide

    Cordialement

    -----

  2. #2
    gienas
    Modérateur

    Re : Projet Python

    Bonsoir ThePredator et tout le groupe

    Bienvenue sur le forum.

    Citation Envoyé par ThePredator Voir le message
    ... J'ai commencé à faire quelque chose mais je le posterai tout à l'heure ...
    Il est prévu dans nos règles de fonctionnement de ne jamais faire le travail des demandeurs, aussi, nous attendrons de voir ton travail avant d'intervenir.
    Dernière modification par gienas ; 10/01/2019 à 16h09.

  3. #3
    ThePredator

    Re : Projet Python

    Déjà merci pour l'accueil et bien sûr je vais poster ce que j'ai commencé à faire
    Code:
    #!/usr/bin/python3
    print("\n")
    print("             ##################################################################")
    print("             ##                                                              ##")
    print("             ##              Programmme Python                               ##")
    print("             ##              Auteur:                       ##")
    print("             ##              Année: 2018/2019                                ##")
    print("             ##              Projet tuteuré: Gestion des accès à un bâtiment ##")
    print("             ##                                                              ##")
    print("             ##################################################################")
    print("\n")
    
    #Crétion d'une fonction horaire pour faciliter l'entrée de l'heure d'entrée/sortie du bâtiment
    def heure():
        h=int(input("Entrer les heures svp: "))
        m=int(input("Entrer les minutes svp: "))
        s=int(input("Entrer les secondes svp: "))
        return [h,m,s]
    
    #Création du menu principal
    n=0
    def menu():
        n=0
        print("Bonjour et bienvenue sur le menu. Que désirez-vous faire ?")
        print("1- Entrée \n" "2- Sortie \n" "3- Affichage \n" "4- Historique des entrées/sorties \n" "5- Liste des personnes présentes dans le bâtiment actuellement \n" "6- Liste des personnes présentes à un créneau précis \n" "7- Temps total passé dans le bâtiment \n" "8- Quitter")
        n=(input("Taper le nombre correspondant à ce que vous souhaitez faire dans le menu (Entre 1 et 8): "))
        return n
    while n!="10":
        n=menu()
        if n=="1":
            print("Entrée")
            entree()
        elif n=="2":
            print("Sortie")
            sortie()
        elif n=="3":
            print("Affichage")
        elif n=="4":
            print("Historique des entrées/sorties")
        elif n=="5":
            print("Liste des personnes présentes actuellement dans le bâtiment")
        elif n=="6":
            print("Liste des personnes présentes à un créneau précis")
        elif n=="7":
            print("Temps total passé dans le bâtiment")
        elif n=="8":
            print("Quitter")
    print(menu())
    
    #Définition de la fonction "Entrée"
    nom=0
    h=0
    utilisateur=[] #On crée une liste pour enregistrer les personnes
    def entree():
        nom=input("Entrer votre nom svp: ") #On demande à la personne d'entrer son nom pour qu'elle puisse s'enregistrer dans les données de la badgeuse
        return nom
        verif=[nom] #On vérifie que la personne n'est pas déjà présente dans le bâtiment
        entree=heure() #On lui demande de rentrer l'heure à laquelle il rentre dans le bâtiment
        verif.append(entree)
        utilisateur.append(verif)
        print("Bonjour",nom,",vous êtes bien enregistré(e)")
    
    #Création de la fonction "Sortie" (à complèter)
    def sortie():
        name=input("Entrer votre nom svp: ") #On demande à l'utilisateur enregistré d'entrer son nom
        sortie=heure() #On lui demande de rentrer l'heure à laquelle il/elle quitte le bâtiment
    
    #Définition de la fonction "Historique des entrées/sorties"
    def hist_entrees_sorties():
        name=input("Veuillez rentrer le nom d'une personne à rechercher dans les données: ") #On demande à la personne de rentrer le nom de quelqu'un pour vérifier ses entrées/sorties
    Je rencontre beaucoup de difficultés pour avancer ce projet . En espérant de l'aide, merci d'avance

  4. #4
    polo974

    Re : Projet Python

    les données doivent-elles être stockées en fichier, dit autrement le programme doit-il pouvoir reprendre un historique? (dans la vrai vie, c'est oui)
    à l'ancienne: csv, à la mode: json, à la bureaucrate: xml

    pourquoi print(menu()) ??? (que fait menu, à quoi sert print?)

    et il y en a d'autres...

    le système a une horloge, il faut utiliser le module time (il faut faire un import <nom du module>, voir un peu les tutos sur le web)...

    si tu stockes l'heure en format hh:mm:ss, tu peux utiliser time.strftime("%T") et tu peux comparer des heures de cette façon.

    si ta pointeuse doit fonctionner la nuit, tu dois tenir compte de la date: time.strftime("%F %T")

    mais tout ça n'est que détail, il faut déjà architecturer le fond...
    Jusqu'ici tout va bien...

  5. A voir en vidéo sur Futura
  6. #5
    ThePredator

    Re : Projet Python

    Déjà merci de ta réponse. Pour ce qui est du stockage des données, on doit pouvoir avec le programme accéder à un historique (historique des entrées/sorties du bâtiments avec nom, heure entrée et heure sortie). Et ensuite le print(menu()), je viens de voir qu'il n'avait pas d'utilité dans le programme, je l'ai donc enlevé. J'ai oublié de préciser avant que le stockage des données ce fait uniquement sur une journée.

  7. #6
    ThePredator

    Re : Projet Python

    Bonjour, je viens d'avancer mon programme. Est-il possible de m'aider et pourquoi pas l'améliorer si j'ai le temps svp ? Merci
    Code:
    #!/usr/bin/python3
    print("\n")
    print("             ##################################################################")
    print("             ##                                                              ##")
    print("             ##              Programmme Python                               ##")
    print("             ##              Auteur:                         ##")
    print("             ##              Année: 2018/2019                                ##")
    print("             ##              Projet tuteuré: Gestion des accés à un bâtiment ##")
    print("             ##                                                              ##")
    print("             ##################################################################")
    print("\n")
    
    ##################################################################################
    #Fonctions pratiques :
    #Informations de la personne
    def affichage(elem):
        return "Nom: " + elem[0] + " | Entrée: "+ aff_heure(elem[1]) + " | Sortie: " + aff_heure(elem[2])
    
    def aff_heure(h):
        if h==None:
            return "None"
        else:
            return (str(h[0])+"h "+str(h[1])+"min "+str(h[2])+"s")
    
    #Création d'une fonction horaire pour faciliter l'entrée de l'heure d'entrée/sortie du bâtiment
    def heure():
        h=int(input("Entrer les heures svp: "))
        while h<0 or h>23:
            h=int(input("Une erreur s'est produite ! Veuillez ressayer: "))
        m=int(input("Entrer les minutes svp: "))
        while m<0 or m>59:
            m=int(input("Une erreur s'est produite ! Veuillez ressayer:  "))
        s=int(input("Entrer les secondes svp: "))
        while s<0 or s>59:
            s=int(input("Une erreur s'est produite ! Veuillez ressayer."))
        return [h,m,s]
    
    
    
    ###################################################################################
    #Création du menu principal
    n=0
    def menu():
        n=0
        print("Bonjour et bienvenue sur le menu. Que désirez-vous faire ?")
        print("1- Entrée \n" "2- Sortie \n" "3- Affichage \n" "4- Historique des entrées/sorties \n" "5- Liste des personnes présentes dans le bâtiment actuellement \n" "6- Liste des personnes présentes à un créneau précis \n" "7- Temps total passé dans le bâtiment \n" "8- Quitter")
        n=input("Taper le nombre correspondant à ce que vous souhaitez faire dans le menu (Entre 1 et 8): ")
        return n
    
    
    #Définition de la fonction "Entrée"
    nom=0
    entree=0
    utilisateur=[] #On crée une liste pour enregistrer les personnes
    def entree():
        nom=input("Entrer votre nom svp: ") #On demande à la personne d'entrer son nom pour qu'elle puisse s'enregistrer dans les données de la badgeuse
        verif=[nom] #On vérifie que la personne n'est pas déjà présente dans le bâtiment
        entree=heure() #On lui demande de rentrer l'heure à laquelle il rentre dans le bâtiment
        verif.append(entree)
        verif.append(None) #Signifie que l'utilisateur n'a pas rentré une heure de sortie
        utilisateur.append(verif)
        print("Bonjour",nom,",vous êtes bien enregistré(e)")
    
    
    #Création de la fonction "Sortie" (à compléter)
    def sortie():
        name=input("Entrer votre nom svp: ") #On demande à l'utilisateur enregistré d'entrer son nom
        sortie=heure() #On lui demande de rentrer l'heure à laquelle il/elle quitte le bâtiment
        check=True
    
    
    #Définition de la fonction "Historique des entrées/sorties"
    def hist_entrees_sorties():
        name=input("Veuillez rentrer le nom d'une personne à rechercher dans les données: ") #On demande à la personne de rentrer le nom de quelqu'un pour vérifier ses entrées/sorties
        for elem in utilisateur:
            if name==elem[0]:
                print(affichage(elem))
                
    
    #Création de la fonction permettant de savoir qui se trouve actuellement dans le bâtiment
    def pers_bat():
        for elem in utilisateur:
            if elem[2]==None:
                print(affichage(elem))
    
    
    #Suite fonction menu   
    while n!=10:
        n=menu()
        if n=="1":
            print("Entrée")
            entree()
        elif n=="2":
            print("Sortie")
            sortie()
        elif n=="3":
            print("Affichage")
            for elem in utilisateur:
                print(affichage(elem))
        elif n=="4":
            print("Historique des entrées/sorties")
            hist_entrees_sorties()
        elif n=="5":
            print("Liste des personnes présentes actuellement dans le bâtiment")
            pers_bat()
        elif n=="6":
            print("Liste des personnes présentes à un créneau précis")
        elif n=="7":
            print("Temps total passé dans le bâtiment")
        elif n=="8":
            exit()
            print("Quitter")
        else:
            n=menu()
    menu()

Discussions similaires

  1. Petit problème dans mon projet d'info (Python)
    Par EquinoxEla dans le forum Programmation et langages, Algorithmique
    Réponses: 4
    Dernier message: 19/12/2016, 18h15
  2. Projet Python 360°
    Par callain dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 22/03/2016, 17h27
  3. Projet mécanique des fluide python
    Par amaury09 dans le forum Physique
    Réponses: 7
    Dernier message: 19/02/2015, 07h56
  4. Projet python
    Par B4nj dans le forum Programmation et langages, Algorithmique
    Réponses: 14
    Dernier message: 05/01/2014, 22h58
  5. Aide projet python
    Par invitef939ada6 dans le forum Programmation et langages, Algorithmique
    Réponses: 4
    Dernier message: 06/01/2012, 21h38