Форум сайта python.su
6
Budulianin
Просто in спрашивает не совсем понятно. Вот я и отправил его почитать http://informatics.mccme.ru/mod/book/view.php?id=4384&chapterid=473 думая что он хочет взять переменную и вытянуть их из цикла.
#Чтобы функция могла изменить значение глобальной переменной, необходимо объявить эту переменную внутри функции, как глобальную, при помощи ключевого слова global: def f(): global a a = 1 print (a) a = 0 f() print(a)
for <элемент> in <итерируемый объект>: блок1 if условие: continue else: break блок2 # не выполнится никогда, учитывая инструкцию if else: блок3 # выполнится, если выход из цикла не осуществлялся инструкцией break
Офлайн
0
Budulianin
И вообще, если возникает потребность в continue или break, то скорее всего ваш алгоритм неудачный.
Офлайн
6
Офлайн
33
>>> lst [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> flag = False >>> for row in lst: ... if flag: break ... for elem in row: ... print(elem) ... if elem == 5: ... flag = True ... break ... 1 2 3 4 5
Офлайн
33
inЭто мнение Дугласа Крокфорда. Наверно он знает, что говорит.
Это очень голословное заявление, которое говорит исключительно о ваших предпочтениях.
Офлайн
0
supper-pit мне не нужен else, в данном случае. вот код функции, мне жаль если это не python way, надеюсь со временем я смогу прикоснуться к прекрасному и понять все тонкости идеологии python, но сейчас мне нужно просто решение которое нормально показало себя в других языках
def checkBlackCount (self, extraData): countFlag = False for i in range(11): for j in range(11): figure = self.field[i][j] if figure == 1: countFlag = True if countFlag == False: extraData['win'] = True
Офлайн
0
Вот смотрите этот код на самом деле не нативный синтаксис, а один из костылей.
flag = False >>> for row in lst: ... if flag: break ... for elem in row: ... print(elem) ... if elem == 5: ... flag = True ... break
Отредактировано in (Сен. 28, 2014 01:31:08)
Офлайн
58
sypper-pit
За global бил бы по рукам 
Офлайн
58
intry - catch в питоне нет…
try catch
Отредактировано 4kpt_II (Сен. 28, 2014 01:32:55)
Офлайн
33
inЯ уже писал о том, что нет таких волшебных слов.
Очевидно если в питоне нет таких возможней
inexcept
catch
Отредактировано Budulianin (Сен. 28, 2014 01:34:58)
Офлайн