Seite 1 von 1

skript wird gekillt

Verfasst: Donnerstag 24. Februar 2022, 15:34
von blutigeranfaenger
Hallo zusammen,
für bestimte Zwecke möchte ich ein skript schreiben, dass einsatzzeiten von events bzw. deren dauern verkürzt.
Hier mein skript:

Code: Alles auswählen

def genDursBeatsinTimespan(start,ges_dauer,basedur,beschleunigung):
    ende = start+ges_dauer
    beats =[start,start+basedur]
    durs = [basedur]
    counter = 1
    nextbeat = beats[-1]
    while nextbeat <ende:
        dur = round(basedur*beschleunigung**counter,4)
        durs.append(dur)
        nextbeat += dur
        beats.append(round(nextbeat,4))
        counter += 1
    return beats,durs
Wenn ich das skript mit diesen parametern laufen lasse, stürzt es ab, ich bekomme ein "killed" auf dem Terminal. Gibt es eine Möglichkeit, das zu vermeiden?

Code: Alles auswählen

beschleunigung = 0.95
start = 0
ges_dauer = 10
basedur = 0.5
beats,durs = genDursBeatsinTimespan(start,ges_dauer,basedur,beschleunigung)
Danke für jeden Hinweis!

Re: skript wird gekillt

Verfasst: Donnerstag 24. Februar 2022, 16:48
von Sirius3
Benutze keine kryptischen Abkürzungen. Was soll ein Durs sein? Oder eine ges_dauer?
Gerundet wird erst bei der Ausgabe, nicht innerhalb von Rechnungen.
Hast Du Dir mal die Werte innerhalb der Schleife ausgeben lassen?

Re: skript wird gekillt

Verfasst: Donnerstag 24. Februar 2022, 17:03
von blutigeranfaenger
Mit ges_dauer meine ich gesamtdauer, durs sind einzelne dauernwerte und dur ist eine einzelne dauer.
Ich vermute, dass bei einem wert von beschleunigung von 0.95 und niedriger die gesamtdauer nie erreicht wird, könnte das sein?

Re: skript wird gekillt

Verfasst: Donnerstag 24. Februar 2022, 17:44
von __blackjack__
@blutigeranfaenger: Dann nenn dass doch auch `gesamtdauer`. Und leg Dich vielleicht auch auf eine (natürliche) Sprache fest statt mal Englisch und mal Deutsch zu verwenden.

Ob das sein könnte, könntest Du doch einfach mal herausfinden in dem Du Dir die Entwicklung der Werte anschaust.