Seite 1 von 1

Wenn...dann....

Verfasst: Dienstag 11. August 2020, 11:59
von sasori99
Hallo Zusammen,

seit meinem 1. und bisher einzigen Beitrag habe ich fleißig gelesen und mein damaliges Problem ein klein wenig vereinfacht ;-)

Mein Problem aktuell ist, dass xcor maximal 800 sein darf und danach ycor um 10 erhöht werden muss. Danach muss xcor wieder bei 0 anfangen.

Wie kann ich dies bei mir einbauen?
Ich hatte es mit while xcor <= versucht, allerdings macht er dann einfach mit 810 weiter....

try:
while True:
try:
p.click(847, 475, 1,)
time.sleep(0.1)
p.hotkey('backspace', 'backspace', 'backspace')
time.sleep(0.1)
p.write(str(xcor))
p.click(962, 470, 1)
p.hotkey('backspace', 'backspace', 'backspace')
time.sleep(0.1)
p.write(str(ycor))
time.sleep(0.1)
p.click(1048, 619, 1,)
time.sleep(1)
xcor = xcor + 10

except p.FailSafeException:
print('Bot has been stopped.')
exit()


Danke für eure Hilfe!

Re: Wenn...dann....

Verfasst: Dienstag 11. August 2020, 12:06
von Sirius3
Das ist kein gültiges Python, weil zum inneren try-Block ein except oder finallly fehlt. xcor und ycor weden nicht initilisiert. while ist die falsche Schleifenart.
Was Du brauchst sind zwei verschachtelte for-Schleifen.

Re: Wenn...dann....

Verfasst: Dienstag 11. August 2020, 12:10
von sasori99
Das ist der ganze Code, der bei mir läuft.

import pyautogui as p
from pygame import mixer
import time

p.FAILSAFE = True

mixer.init()
ding = mixer.Sound('resources/sounds/ding.wav')

kaesten = 2

xcor = 750
ycor = 1

neueZeile = xcor <= 800

except TypeError:
p.alert(text='Du hast etwas falsches eingegeben!', title='Error!')
exit()
except Exception as e:
p.alert(text='Error: ' + e, title='Error!')
exit()



try:
while True:
try:
p.click(847, 475, 1,)
time.sleep(0.1)
p.hotkey('backspace', 'backspace', 'backspace')
time.sleep(0.1)
p.write(str(xcor))
p.click(962, 470, 1)
p.hotkey('backspace', 'backspace', 'backspace')
time.sleep(0.1)
p.write(str(ycor))
time.sleep(0.1)
p.click(1048, 619, 1,)
time.sleep(1)
xcor = xcor + 10

except p.FailSafeException:
print('Bot has been stopped.')
exit()

except KeyboardInterrupt:
print('Bot has been stopped.')

mixer.quit()

Re: Wenn...dann....

Verfasst: Dienstag 11. August 2020, 12:28
von __blackjack__
@sasori99: Der läuft so sicher nicht, denn die Einrückung ist an mehreren Stellen kaputt. Und ich meine damit nicht die Darstellung im Beitrag wo die komplett fehlt, sondern die Einrückung die tatsächlich im Code vorhanden ist.

Re: Wenn...dann....

Verfasst: Dienstag 11. August 2020, 14:47
von sasori99
Sorry das war mein 2. und letzter Eintrag in das Forum.
Ich kopiere hier den Code ein und das Forum rückt die Zeilen zusammen.

Es kümmert sich niemand um die Frage. Nur darum, was wie wo wann hätte wäre und wenn.... Schlimmer als im Facebook.
Tschüss bin weg.

Re: Wenn...dann....

Verfasst: Dienstag 11. August 2020, 14:52
von Sirius3
Darum ging es ja gar nicht, sondern darum, dass Du behauptest, der Code würde laufen, es aber nicht tut. Da kann man nur schlecht helfen, wenn wir nicht vom selben Code reden. Außerdem habe ich Dir die Lösung gesagt, man benutzt for-Schleifen. Wenn Du statt Hilfe annehmen, beleidigt sein willst, wird Dich hier niemand abhalten.

Re: Wenn...dann....

Verfasst: Dienstag 11. August 2020, 16:21
von sparrow
@sasori99: Code im Forum immer zwischen Code-Tags schreiben, damit die Einrückung erhalten bleibt. Die erscheinen automatisch, wenn man den </>-Button im "Vollständigen Editor & Vorschau" drückt. Dazwischen gehört dann dein Code.

Ich mache das mal für deinen Code:

Code: Alles auswählen

import pyautogui as p
from pygame import mixer
import time

p.FAILSAFE = True

mixer.init()
ding = mixer.Sound('resources/sounds/ding.wav')

    kaesten = 2

    xcor = 750
    ycor = 1

    neueZeile = xcor <= 800

except TypeError:
    p.alert(text='Du hast etwas falsches eingegeben!', title='Error!')
    exit()
except Exception as e:
    p.alert(text='Error: ' + e, title='Error!')
    exit()



try:
    while True:
        try:
            p.click(847, 475, 1,)
            time.sleep(0.1)
            p.hotkey('backspace', 'backspace', 'backspace')
            time.sleep(0.1)
            p.write(str(xcor))
            p.click(962, 470, 1)
            p.hotkey('backspace', 'backspace', 'backspace')
            time.sleep(0.1)
            p.write(str(ycor))
            time.sleep(0.1)
            p.click(1048, 619, 1,)
            time.sleep(1)
            xcor = xcor + 10

except p.FailSafeException:
        print('Bot has been stopped.')
        exit()

except KeyboardInterrupt:
    print('Bot has been stopped.')

mixer.quit()
Das ändert aber nichts daran, dass dein Code nicht läuft, weil die Einrückungen nicht stimmen.
Du schreibst aber, dass er läuft.

Re: Wenn...dann....

Verfasst: Donnerstag 12. November 2020, 14:38
von webbygirl21
Hi! Also verstehen kann man die Leute teilweise schon. Zu oft hätte man gerne eine Antwort von sparrow, bekommt aber eine von _blackjack_ ... euch beide hier nur exemplarisch und natürlich ist das nur meine persönliche Meinung. Ich bin neu hier und fühle mich bisher ganz wohl, verstehe aber auch den genervten User teilweise

Re: Wenn...dann....

Verfasst: Donnerstag 12. November 2020, 18:37
von snafu
Das Ding ist, dass der Threadersteller sich selbst auch nur auf die Kritik am Code (bzw Hinweis darauf, dass der so nicht laufen kann) konzentriert hat. Wenn man konkrete Fragen zum Hinweis mit den for-Schleifen hat, dann hätte man die auch einfach stellen können...