Accélérer ma boucle while python

fragolo7 -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -

Bonjour,

J'ai codé un programme :

import pyautogui as pg
import time
import datetime
import winsound

time.sleep(5)
Mid = 1768,114

while True:
   
    if pg.pixel(824,475) != (21,16,8):
        pg.click(824,475)
        time.sleep(1)
        pg.moveTo(Mid)
        print('ABS1')
        print(datetime.datetime.now())
        time.sleep(10)

    if pg.pixel(833,624) != (71,54,11) and pg.pixel(1029,686) != (114,95,11):
        winsound.Beep(500,2500)
        quit()

J'ai besoin que ces boucle s'effectuent le plus vite possible ( d'autres personnes me battent en vitesse). Comment m'y prendre ? Dois je changer de langage ou peut etre cython ?
Windows / Chrome 103.0.0.0

5 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     

    Bonjour,

    As-tu essayé de réduire la durée des sleep()?

    0
  2. Fragolo7
     

    En fait les sleep dans le if ne devrait pas changer la vitesse des boucles car le pixel change de couleur chaque minutes donc un sleep de 1-3 secondes après avoir clické ne change rien je pense 

    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       

      peut-être que le programme qui modifie l'affichage de ces pixels ne les modifie pas assez vite?

      0
    2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       

      Tu n'expliques pas à quoi sert ton programme.
      Tu écris "besoin que ces boucle s'effectuent le plus vite possible".
      Ensuite "un sleep de 1-3 secondes après avoir clické ne change rien".

      0
  3. Fragolo7
     

    Comme j’utilise py auto gui, j’imagine que c’est un minimum optimisé d’autant plus que je ne sais pas comment faire autrement 

    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       

      Quel est le programme qui modifie l'affichage de ces pixels?

      0
  4. Fragolo7
     

    Je ne sais pas , j’utilise pyautogui.pixel

    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       

      Tu n'expliques pas à quoi sert ton programme.

      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Fragolo7
     

    Ah d’accord, bah simplement à avoir le temps de réaction le plus court (clicker dessus pour réinitialiser le pixel) lorsque le pixel change de couleur 

    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       

      Qu'est-ce qui provoque le changement du couleur du pixel?

      0