CommencerCommencer gratuitement

Définir une fonction pour convertir des fuseaux horaires

Vous créez un assistant de planification qui aide à organiser des réunions entre différents fuseaux horaires. L’API OpenTimezone propose des services de conversion de fuseau horaire : vous lui envoyez une date-heure, un fuseau source et un fuseau cible, et elle renvoie l’heure convertie. Votre mission est d’écrire une fonction qui effectue cet appel d’API et renvoie un résultat formaté.

Les modules requests et json ont déjà été importés pour vous.

Cet exercice fait partie du cours

Travailler avec l’API OpenAI Responses

Afficher le cours

Instructions

  • Définissez la variable url à "https://api.opentimezone.com/convert".
  • Créez un dictionnaire payload avec les clés "dateTime", "fromTimezone" et "toTimezone" associées aux arguments de la fonction.
  • Effectuez une requête POST vers url en passant payload au format JSON.
  • Vérifiez que la fonction fonctionne avec les valeurs fournies.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

def convert_timezone(date_time: str, from_timezone: str, to_timezone: str) -> str:
    """
    Convert a datetime from one timezone to another.
    
    Args:
        date_time: The datetime string in ISO format
        from_timezone: Source timezone
        to_timezone: Target timezone
    
    Returns:
        A string with the converted datetime and timezone information
    """
    # Set the API endpoint
    url = "____"
    
    # Prepare the request payload
    payload = {"dateTime": ____, "fromTimezone": ____, "toTimezone": ____}
    
    try:
        # Make the API request and extract converted time
        response = requests.post(url, json=____)
        response.raise_for_status()
        
        data = response.json()
        converted_time = data.get('dateTime', 'N/A')
        
        return f"Time in {to_timezone}: {converted_time}"
    
    except requests.exceptions.RequestException as e:
        return f"Error converting timezone: {str(e)}"

# Test the function
result = convert_timezone('2025-01-20T14:30:00', 'America/New_York', 'Europe/London')
print(result)
Modifier et exécuter le code