Mettre le processus en veille pendant un certain temps (secondes) ou plus en Python

Implémentation lorsque vous souhaitez arrêter le traitement en Python pendant un certain temps.

Lorsque vous appelez plusieurs fois une API externe dans une instruction for, vous souhaiterez peut-être laisser un certain intervalle. Mais c'est un peu inefficace si vous dormez toujours une certaine quantité. Je souhaite m'endormir si le temps de traitement est inférieur à un certain intervalle.

Exemple) Je souhaite laisser un intervalle de 2 secondes ou plus entre les demandes à l'API Twitter.

import time
from datetime import datetime


def hoge():
    start = datetime.now()

    #Ici requête API et traitement associé
    hoge()

    exec_time = (datetime.now() - start).microseconds

    #Si le processus ne prend pas plus de 2 secondes, dormez pendant au moins 2 secondes
    sleep_sec = float(2000 - exec_time) / 1000
    if sleep_sec > 0:
        time.sleep(sleep_sec)

Il semble y avoir une meilleure façon de l'écrire.

Recommended Posts

Mettre le processus en veille pendant un certain temps (secondes) ou plus en Python
Vérifiez le temps de traitement et le nombre d'appels pour chaque processus avec python (cProfile)
Comment vérifier la taille de la mémoire d'une variable en Python
[Introduction à Python] Comment utiliser l'opérateur in dans l'instruction for?
Comment vérifier la taille de la mémoire d'un dictionnaire en Python
Une fonction qui mesure le temps de traitement d'une méthode en python
[Python3] Définition d'un décorateur qui mesure le temps d'exécution d'une fonction
L'histoire du retour au front pour la première fois en 5 ans et de la refactorisation de Python Django
[Python] Comment utiliser l'instruction for. Une méthode d'extraction en spécifiant une plage ou des conditions.
MongoDB avec Python pour la première fois
[Introduction à Udemy Python3 + Application] 47. Traitez le dictionnaire avec une instruction for
Comment obtenir la différence de date et d'heure en secondes avec Python
[Python] Comment mettre n'importe quel nombre d'entrées standard dans la liste
Comment bien formater une liste de dictionnaires (ou d'instances) en Python
Obtenez une instance datetime à tout moment de la journée en Python
J'ai fait un programme pour vérifier la taille d'un fichier avec Python
Une note utile lors de l'utilisation de Python après une longue période
Python: je souhaite mesurer proprement le temps de traitement d'une fonction
[Python] Comment ouvrir deux fichiers ou plus en même temps
4 méthodes pour compter le nombre d'occurrences d'entiers dans un certain intervalle (y compris la méthode imos) [implémentation Python]
Une histoire d'essayer d'améliorer le processus de test d'un système vieux de 20 ans écrit en C
Récupérer l'appelant d'une fonction en Python
Copiez la liste en Python
Une manière intelligente de chronométrer le traitement avec Python
Pour ajouter un module à python que vous mettez dans Julialang
Sortie sous la forme d'un tableau python
Pour représenter la date, l'heure, l'heure et les secondes en Python
Différentes façons de lire la dernière ligne d'un fichier csv en Python
Comment passer le résultat de l'exécution d'une commande shell dans une liste en Python
Expérimentez pour collecter des tweets pendant une longue période (agrégation et confirmation du contenu)
J'ai recherché les compétences nécessaires pour devenir ingénieur web avec Python
Script Python pour obtenir une liste d'exemples d'entrée pour le concours AtCoder
Transformez plusieurs listes avec l'instruction for en même temps en Python
Comment obtenir une liste de fichiers dans le même répertoire avec python
[Introduction à Python] Comment obtenir l'index des données avec l'instruction for
Comment obtenir le nombre de chiffres en Python
Comment mesurer le temps de traitement avec Python ou Java
Enregistrer une tâche dans cron pour la première fois
Comment identifier l'élément avec le plus petit nombre de caractères dans une liste Python?
Le concept de référence en Python s'est effondré un instant, j'ai donc expérimenté un peu.
Comment tester unitaire une fonction contenant l'heure actuelle à l'aide de Freezegun en Python
Comment vérifier en Python si l'un des éléments d'une liste est dans une autre liste
Trouvez une ligne directrice pour le nombre de processus / threads à définir sur le serveur d'applications
Sortie de la table spécifiée de la base de données Oracle en Python vers Excel pour chaque fichier
Une histoire sur la tentative d'introduire Linter au milieu d'un projet Python (Flask)
Un mémorandum sur la mise en œuvre des recommandations en Python
Pour faire l'équivalent de Ruby ObjectSpace._id2ref en Python
Note Python: Le mystère de l'attribution d'une variable à une variable
J'ai créé un programme en Python qui change les données de 1 minute de FX en une heure arbitraire (1 heure, etc.)
[C / C ++] Passez la valeur calculée en C / C ++ à une fonction python pour exécuter le processus et utilisez cette valeur en C / C ++.
L'histoire de la création d'un «espace de discussion sur l'esprit et le temps» exclusivement pour les ingénieurs de l'entreprise
Comment économiser de la mémoire lors de la lecture d'énormes XML de plusieurs Go ou plus en Python
Obtenir la valeur d'une clé spécifique jusqu'à l'index spécifié de la liste de dictionnaires en Python
[OCI] Script Python pour obtenir l'adresse IP d'une instance de calcul dans Cloud Shell
__init__ appelé par wxPython ou Tkinter était un appel __init__ de la classe héritée en Python
[Python] Programmation pour trouver le nombre de a dans une chaîne de caractères qui se répète un nombre spécifié de fois.
Comment compter rapidement la fréquence d'apparition des caractères à partir d'une chaîne de caractères en Python?
Comment calculer la somme ou la moyenne des données csv de séries chronologiques en un instant