Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 27, 2014 22:13:02

in
Зарегистрирован: 2013-09-11
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

выйти из всех циклов

for i in range(11):
            for j in range(11):
                figure = self.field[i][j]
                if figure == 2:
                    countFlag = True
                    # теперь хочу отсюда свалить, как? (break 2, goto ...)

Офлайн

#2 Сен. 27, 2014 23:43:13

Budulianin
От:
Зарегистрирован: 2011-10-18
Сообщения: 1218
Репутация: +  33  -
Профиль   Отправить e-mail  

выйти из всех циклов

in
Зарегистрирован: 2013-09-11
in
figure = self.field[i][j]
in
goto
Свали с форума и полистай Лутца, потом возвращайся, если что-то изменится.



Отредактировано Budulianin (Сен. 27, 2014 23:46:25)

Офлайн

#3 Сен. 28, 2014 00:09:17

sypper-pit
От: Ulan-Ude(msk)
Зарегистрирован: 2009-01-30
Сообщения: 1102
Репутация: +  6  -
Профиль   Отправить e-mail  

выйти из всех циклов

Budulianin
Ну что ж ты так жестко

in
Уважаемый не понятно что вы хотите получить
если результат из цикла и выйти то используйте global
если завершить процесс то он завершиться и сам
если нужно получить ответ от системы то

for i in range(11):
            for j in range(11):
                figure = self.field[i][j]
                if figure == 2:
                    countFlag = True
                    # теперь хочу отсюда свалить, как? (break 2, goto ...)
                else:
                    print "Вот я и свалил потому что нет данных"

Офлайн

#4 Сен. 28, 2014 00:27:55

Budulianin
От:
Зарегистрирован: 2011-10-18
Сообщения: 1218
Репутация: +  33  -
Профиль   Отправить e-mail  

выйти из всех циклов

sypper-pit
если результат из цикла и выйти то используйте global
Как global прервёт циклы? Ты о чём вообще?



Офлайн

#5 Сен. 28, 2014 00:37:23

Budulianin
От:
Зарегистрирован: 2011-10-18
Сообщения: 1218
Репутация: +  33  -
Профиль   Отправить e-mail  

выйти из всех циклов

in
Узнай что такое return



Офлайн

#6 Сен. 28, 2014 00:41:35

in
Зарегистрирован: 2013-09-11
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

выйти из всех циклов

Budullanin, сегодня суббота идите пива попейте что-ли. Вы переработались походу. Это простая задача, которая легко решается в других языках. Можно сказать что вопрос касается синтаксиса языка, чтобы уточнить синтаксис необязательно лопатить всю документацию, а достаточно просто спросить. И пожалуйста не тыкайте мне, я с вами лично незнаком.

Отредактировано in (Сен. 28, 2014 00:46:19)

Офлайн

#7 Сен. 28, 2014 00:45:45

in
Зарегистрирован: 2013-09-11
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

выйти из всех циклов

Там дальше еще код, return мне неподходит, мне нужно именно досрочно закончить оба цикла, а не возвращать что-то из функции. Удивительно что с таким рейтингом вы этого не знаете, видимо для вас нормально что циклы прогоняются полностью даже в том случае, если в этом нет необходимости. У меня другие требования к программе.

Офлайн

#8 Сен. 28, 2014 00:51:32

Budulianin
От:
Зарегистрирован: 2011-10-18
Сообщения: 1218
Репутация: +  33  -
Профиль   Отправить e-mail  

выйти из всех циклов

in
И пожалуйста не тыкайте мне, я с вами лично не знаком.
У нас тут свободное общение. Не надо воспринимать это, как оскорбление.
in
Можно сказать что вопрос касается синтаксиса языка
В том то и дело, что даже с основами ты не знаком, а если не знаком, то ничего хорошего не получится.
Только всякая ерунда, + вопросы, которые на первой странице всех учебников.
Писал бы на своём привычном ЯП тогда и всё. Зачем извращаться, непонятно.



Офлайн

#9 Сен. 28, 2014 00:53:18

Budulianin
От:
Зарегистрирован: 2011-10-18
Сообщения: 1218
Репутация: +  33  -
Профиль   Отправить e-mail  

выйти из всех циклов

in
Удивительно что с таким рейтингом вы этого не знаете
Чего я не знаю? Что у тебя там ещё код? Да не знаю, рейтинг тут не поможет.
И я не говорил, как именно использовать return.

P.S. нету в Python таких волшебных слов, чтобы прервать сразу два цикла.
Если у тебя возникает такая потребность, то ты делаешь, что-то не то.

И вообще, если возникает потребность в continue или break, то скорее всего ваш алгоритм неудачный.



Отредактировано Budulianin (Сен. 28, 2014 01:06:11)

Офлайн

#10 Сен. 28, 2014 01:02:26

in
Зарегистрирован: 2013-09-11
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

выйти из всех циклов

Я в скобках написал два примера того как это делается в сишных языках и на яваскрипт, там два цикла поэтому обычный брейк не подходит. Я могу нагородить костылей, например выбрасывать ошибку и прочее, но мне нужно самое адекватное решение и просто в туториалах по циклам этого не нашлось. Видимо выходить из двух, трех и более циклов людям приходится не так часто.

Отредактировано in (Сен. 28, 2014 01:03:05)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version