Я пытаюсь создать небольшую программу тренировок для себя, чтобы использовать ее дома с Джанго.У меня есть 5 списков, они содержат тренировки верхней части тела, тренировки нижней части тела, тренировки всего тела, тренировки ab, а затем еще один, который включает в себя случайное время в секундах.Я отправляю форму, в которой просто указано количество минут, которое я хочу потренировать.Я использую Python random, чтобы сначала рандомизировать список раз с циклом while:
timelimits = [
15,
30,
45,
60,
75,
90
]
# This is inside of my views, rendering to index
time = form.cleaned_data['duration']
workouttime = 0
randomtimes = []
while workouttime <= int(time) * 60:
randomtime = random.choice(timelimits)
randomtimes.append(randomtime)
workouttime = workouttime + randomtime
, а затем после того, как я создаю список случайных чисел с тем количеством случайных моментов, которое приближается к продолжительности минут, которые я указал в моемЯ думаю, что нужно создать тренировку со случайными упражнениями из каждого списка:
exercises = 0
workout = []
station = 'a'
while exercises < len(randomtimes):
if station == 'a':
if len(lowerbody) > 0:
randomleg = random.choice(lowerbody)
lowerbody.remove(randomleg)
workout.append([randomleg, randomtimes[exercises]])
exercises = exercises + 1
print(exercises)
station = 'b'
elif station == 'b':
if len(fullbody) > 0:
randomfb = random.choice(fullbody)
fullbody.remove(randomfb)
workout.append([randomfb, randomtimes[exercises]])
exercises = exercises + 1
print(exercises)
station = 'c'
elif station == 'c':
if len(upperbody) > 0:
randomup = random.choice(upperbody)
upperbody.remove(randomup)
workout.append([randomup, randomtimes[exercises]])
exercises = exercises + 1
print(exercises)
station = 'd'
elif station == 'd':
if len(abbs) > 0:
randomabbs = random.choice(abbs)
abbs.remove(randomabbs)
workout.append([randomabbs, randomtimes[exercises]])
exercises = exercises + 1
print(exercises)
station = 'a'
Когда я нажимаю на кнопку Отправить на моей форме, она начинает печатать на консоли, как будто она работает должным образом, но обычно мой сервер просто вращается до тех пориз.Если я затем снова отправляю форму, она загружается правильно и создает список случайных тренировок со случайным связанным временем.Он замерзает либо у строителя времени, либо у тренировок, и я действительно не могу понять, что заставляет его зависать.Как я уже сказал, это не сработает, тогда, если я отправлю его повторно, оно будет работать магическим образом.