Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 14, 2014 16:05:42

leonid_10
От:
Зарегистрирован: 2010-03-28
Сообщения: 197
Репутация: +  3  -
Профиль   Отправить e-mail  

Break, continue и так далее..

Пишу, пишу, а дуб дубом.

                            for particle in mod.particle_system.particles:
                                animFrame=0
                                for i in range (0,fe):
                                    if particle.alive_state == 'ALIVE':
                                        scene.frame_set(fc-i, 0.0)
                                        animFrame+=1
                                    else:
                                       break
Мне нужно, чтобы, если particle.alive_state != ‘ALIVE’: прекратился цикл for i in range (0,fe):, а прекращается цикл for particle
Я решил проблему нерационально, просто удалив else, но, при этом, как я понимаю, циклу приходится пройти полный путь от 0 до fe, на что тратится время, и, если частиц миллион, и кадров несколько тысяч.
Писал вместо break - continue, вообще не понял, что оно есть.



Офлайн

#2 Сен. 14, 2014 16:41:41

Alen
Зарегистрирован: 2013-08-01
Сообщения: 372
Репутация: +  49  -
Профиль   Отправить e-mail  

Break, continue и так далее..

leonid_10
если particle.alive_state != ‘ALIVE’: прекратился цикл for i in range (0,fe):, а прекращается цикл for particle

Нет. Такого в python не происходит. У Вас что-то другое.
>>>for i in range(2):
...     print 'i: {}'.format(i)
...     for j in range(3):
...         if j != 2:
...             print '-> j: {}'.format(j)
...         else:
...             break
i: 0
-> j: 0
-> j: 1
i: 1
-> j: 0
-> j: 1

Отредактировано Alen (Сен. 14, 2014 16:46:35)

Офлайн

#3 Сен. 14, 2014 20:58:19

leonid_10
От:
Зарегистрирован: 2010-03-28
Сообщения: 197
Репутация: +  3  -
Профиль   Отправить e-mail  

Break, continue и так далее..

Alen
Нет. Такого в python не происходит. У Вас что-то другое.
Спасибо за ответ. Сам думал, что ошибки нет.
Возможно, это какой-то сбой в Python API Блендера, или…хз
Проверить это кому-то трудно, ибо это экспортёр из Блендера в Поврей. Много кода написано, хорошо работает, но, вот такие проблемы происходят по непонятным причинам:/
В такое время чувствую себя новичком, поэтому и задаю вопросы новичка :)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version