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 :

Pb variable avec datetime.timedelta


Sujet :

Python

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 88
    Points : 63
    Points
    63
    Par défaut Pb variable avec datetime.timedelta
    bonjour

    je souhaite passer dans un datetime.timedelta des variables

    mais j'ai une erreur
    TypeError: unsupported type for timedelta microseconds component: str

    Voici le code

    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
     
    #!/usr/bin/python
    # -*- coding: utf-8 -*-
     
     
     
    import datetime
     
     
     
    duree = "00:46:19"
     
    duree = duree.split(":")
    heure_duree = int(duree[0])
    minute_duree = int(duree[1])
    seconde_duree = int(duree[2])
     
     
    resultat = datetime.timedelta('heure_duree', 'minute_duree', 'seconde_duree')
    print resultat

    Merci de votre aide

    Cordialement

  2. #2
    Membre averti Avatar de cervo
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 220
    Points : 388
    Points
    388
    Par défaut


    Citation Envoyé par www.rubis Voir le message
    bonjour

    je souhaite passer dans un datetime.timedelta des variables

    mais j'ai une erreur
    TypeError: unsupported type for timedelta microseconds component: str

    Voici le code

    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
     
    #!/usr/bin/python
    # -*- coding: utf-8 -*-
     
     
     
    import datetime
     
     
     
    duree = "00:46:19"
     
    duree = duree.split(":")
    heure_duree = int(duree[0])
    minute_duree = int(duree[1])
    seconde_duree = int(duree[2])
     
     
    resultat = datetime.timedelta('heure_duree', 'minute_duree', 'seconde_duree')
    print resultat

    Merci de votre aide

    Cordialement
    datetime.timedelta prends des parametres nommés

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    resultat = datetime.timedelta(hours=heure_duree, minutes=minute_duree, seconds=seconde_duree)
    # Tu peux aussi faire resultat = datetime.timedelta(heure_duree, minute_duree, seconde_duree)
     
    print resultat
    Tu auras un joli:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    00:46:19
    # 2e cas datetime.timedelta(0, 46, 19)
    Toute chose dépend de la valeur qu'on lui attribue !

  3. #3
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 300
    Points : 6 780
    Points
    6 780
    Par défaut
    Salut,

    Sans doute que ton exemple ne reproduit pas ton contexte.

    En tous cas pour moi aucun problème:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Python 2.7.3 (default, Jun 22 2015, 19:43:34) 
    [GCC 4.6.3] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import datetime
    >>> d = "00:46:19"
    >>> h, m, s = d.split(":")
    >>> r = datetime.timedelta(int(h), int(m), int(s))
    >>> r
    datetime.timedelta(0, 46, 19)
    >>>

    Edit: Oups, j'aurais du reprendre tes lignes de code pour voir la bourde ...

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 88
    Points : 63
    Points
    63
    Par défaut
    merci beaucoup de votre aide

    ca fonctionne bien

    Cordialement

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

Discussions similaires

  1. [VB.NET] Problem de récupération de variable avec une DLL
    Par ludovic85 dans le forum Windows Forms
    Réponses: 11
    Dernier message: 19/01/2005, 11h37
  2. Réponses: 4
    Dernier message: 28/10/2004, 10h57
  3. Variable avec saut de ligne à l'intérieur
    Par MaTHieU_ dans le forum Langage
    Réponses: 2
    Dernier message: 09/08/2004, 22h39
  4. Generer des noms de variables avec une boucle
    Par moutanakid dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 28/07/2004, 17h45
  5. Désigner une variable avec une variable?
    Par littleman dans le forum Paradox
    Réponses: 4
    Dernier message: 12/08/2002, 11h21

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