Définir une fonction pour convertir des fuseaux horaires
Vous créez un assistant de planification qui aide à coordonner des réunions entre différents fuseaux horaires. L'API OpenTimezone offre des services de conversion de fuseau horaire : vous n'avez qu'à lui envoyer une date et heure, le fuseau source et le fuseau cible, et elle retourne l'heure convertie. Votre tâche consiste à créer 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.
Cette activité fait partie du cours
Utiliser l'API Responses d'OpenAI
Instructions de l’exercice
- Définissez la variable
urlà"https://api.opentimezone.com/convert". - Créez un dictionnaire
payloadavec les clés"dateTime","fromTimezone"et"toTimezone"associées aux arguments de la fonction. - Faites une requête POST vers
urlen transmettantpayloadcomme JSON. - Vérifiez que la fonction fonctionne avec les valeurs fournies.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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)