Python Turtle .onkeypress не регистрируется каждую секунду, когда я нажимаю и удерживаю клавишуPython

Программы на Python
Ответить
Anonymous
 Python Turtle .onkeypress не регистрируется каждую секунду, когда я нажимаю и удерживаю клавишу

Сообщение Anonymous »

Этот код рисует линию, но когда вы нажимаете (и удерживаете) клавишу пробела, она ускоряется, а когда отпускаете, возвращается к исходной скорости (что-то вроде slither.io).

Код: Выделить всё

import turtle
speed = 1
def speed_up():
global speed
speed += 8
return speed
def slow_down():
global speed
speed -= 8
return speed
wn = turtle.Screen()

wn.listen()
wn.onkeypress(speed_up, "space")
wn.onkeyrelease(slow_down, "space")

RADIUS = 500
drone = turtle.Turtle()
for _ in range(1000):
for __ in range(RADIUS // 10):
drone.speed(speed)
print(speed)
drone.forward(10)

turtle.mainloop()
Однако скорость действительно нестабильна, поэтому в моем терминале (когда я запускаю python app.py) операторы печати выглядят примерно так:

Код: Выделить всё

9
9
9
9
9
1
9
9
9
1
1
9
9
9
1
9
9
9
1
9
9
Хотя я все время нажимаю и удерживаю.

Подробнее здесь: https://stackoverflow.com/questions/751 ... hat-i-pres
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»