Форум сайта python.su
0
if slovo: povtor = 10 while povtor>0: ...telo... povtor=povtor-1
Офлайн
75
gelius
может просто в начале файла сделать slovo=False?
А так
if 'slovo' in locals() or 'slovo' in globals():
Офлайн
0
А можно как-то более,..ммм,..общо задачу обрисовать?.. И версию змеюки, плиз.
Отредактировано GrayDocker (Июнь 27, 2014 12:44:14)
Офлайн
0
Питон 2.7. Нужно выполнить цикл если существует переменная ‘slovo’.
Singularity, с твоим вариантом проблема отступов исчезла но цикл выполняется независимо от наличия переменной.
Также хотелось бы выполнять другой цикл, если переменная отсутствует.
Офлайн
857
Условие “если переменная отсутствует” говорит, что что-то не так в коде. Это напоминает прыжки по коду с помощью goto в старые времена.
Создай переменную со значением None. Это будет значить, что у неё нет никакого значения ещё.
Отредактировано py.user.next (Июнь 27, 2014 22:46:39)
Офлайн
0
То есть создается переменная со значением None. Если значение меняется выполняется один цикл, если остается прежним - другой. Можно пример реализации?
Офлайн
857
geliusНапиши задание.
Можно пример реализации?
Офлайн
0
ОК. Вроде все подробно расписал. Есть два разных цикла while. Если существует переменная “slovo” выпоняется один, если несуществует - другой. Вариант с присвоением переменной null непонятен.
Офлайн
568
gelius
Ну это же не джаваскрипт, тут нет undefined, тут будет ошибка. Если сильно хочется, перехватывайте исключение NameError, но любой Вам скажет, что это говнокод.
Интересно, как Вы видите решение своей проблемы в реализации на С?
Офлайн
5
Если нет переменной, выпадает исключение NameError, вот и лови его с помощью try/except:
try: if slovo: povtor=10 while povtor>0: print('Тело цикла: №'+str(povtor)) povtor=povtor-1 except NameError: print('Переменной не существует или что там делать, если ее нет')
Офлайн