Partage
  • Partager sur Facebook
  • Partager sur Twitter

Addition d'heures et de minutes

Sujet résolu
    18 septembre 2015 à 17:23:25

    Bonjour à tous

    J'ai besoin d'additionner des heures et des minutes entre elles. Pas par rapport à un instant t comme on peut le voir partout sur internet. Mais juste entre elles, par exemple :

    3:06 + 2:45 = 5:51
    0:31 + 1:50 = 2:21
    (hours):(minuts) + (hours):(minuts) = result
    

    La syntaxe avec les deux points, on s'en fiche bien sûr, ce n'est juste que pour l'exemple!
    Merci de votre aide !

    -
    Edité par Wizix98 18 septembre 2015 à 17:30:40

    • Partager sur Facebook
    • Partager sur Twitter
      18 septembre 2015 à 19:21:14

      Qu'est ce que tu as essayé de faire pour l'instant?
      • Partager sur Facebook
      • Partager sur Twitter
        18 septembre 2015 à 20:35:46

        Rechercher si la libraire time ou datetime permettent ça. Pas la peine de tout ré-écrire si elles le permettent, surtout qu'elles sont déjà importé dans le programme. Et ça me parait bizarre qu'elles n'autorisent pas ça.

        -
        Edité par Wizix98 18 septembre 2015 à 20:36:24

        • Partager sur Facebook
        • Partager sur Twitter
          18 septembre 2015 à 21:43:44

          Bon réflexe^^ De ce que j'ai vu on peut pourtant non (module datetime)?

          • Partager sur Facebook
          • Partager sur Twitter
            18 septembre 2015 à 21:56:57

            Bah à chaque fois que je regarde c'est par rapport à une date précise. Hors, je ne souhaite faire seulement qu'une addition de deux valeurs de temps...

            • Partager sur Facebook
            • Partager sur Twitter
              18 septembre 2015 à 22:14:34

              Je pense qu'il y aurait moyen de bidouiller avec des timedeltas mais c'est effectivement pas fou, tu pourrais juste recréer une classe qui ferait une addition de deux valeurs de temps, c'est pas très compliqué ;) Tu convertis chaque temps en secondes (ou millisecondes, etc, ta plus petite unité de temps), tu les additionne et tu les reconvertis au bon format.
              • Partager sur Facebook
              • Partager sur Twitter
                19 septembre 2015 à 2:18:36

                Je vois pas spécialement le problème ni le besoin de "bidouille" requis par l'utilisation de timedelta (à part peut-être s'il s'agit de l'affichage)

                from datetime import timedelta
                
                td1 = timedelta (hours = 3, minutes = 6)
                td2 = timedelta (hours = 2, minutes = 45)
                
                print ('{} + {} = {}'.format (td1, td2, td1 + td2))
                
                td1 = timedelta (minutes = 31)
                td2 = timedelta (hours = 1, minutes = 50)
                
                print ('{} + {} = {}'.format (td1, td2, td1 + td2))
                
                
                # Output
                # 3:06:00 + 2:45:00 = 5:51:00
                # 0:31:00 + 1:50:00 = 2:21:00



                • Partager sur Facebook
                • Partager sur Twitter
                Censément, quelqu'un de sensé est censé s'exprimer sensément.
                  19 septembre 2015 à 10:37:55

                  Super, c'est exactement ce qu'il me fallait ! :D
                  Merci beaucoup. :)

                  • Partager sur Facebook
                  • Partager sur Twitter

                  Addition d'heures et de minutes

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown