Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 22.11.2020
Сообщений: 3

Про мои похождения в декораторах

22.11.2020, 11:49. Показов 586. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Мне нужно реализовать функцию обвертку, которая проверяет условие. И если это условие обвертки равно True, запускало функцию (которую обвертывает).
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.11.2020, 11:49
Ответы с готовыми решениями:

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

Мои статьи на хабре - про девайс на stm32
В подфоруме про проекты у меня есть ветка про внешнюю сторону девайса rusEfi, а здесь я просто оставлю ссылки на хабр статьи, в которых...

GetEnvironmentVariable (' тут про папку `Мои документы` ') - как такое добыть?
Нет переменной окружения соответствующей?

6
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
22.11.2020, 12:03
у конфеты тоже обвертка? обертка, е-мае

И где кстати похождения? думал тут целая история будет. Где попытки то?

каким образом декоратор получает условие? в аргументах? или оно вшито в логику?
1
0 / 0 / 0
Регистрация: 22.11.2020
Сообщений: 3
22.11.2020, 12:16  [ТС]
Welemir1, рассчитывал что это слишком просто для Вас) Вот пример:

Добавлено через 1 минуту
Python
1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/python
def func():
     def wrapped():
             if 2 == 1:      # Для примера)
                pass     #.........  Выполнение функции
 
@func
def check():
    #
    # Тело этой функции не выполняется,
    # т.к у обвертки False
    #
Добавлено через 3 минуты
Цитата Сообщение от Welemir1 Посмотреть сообщение
у конфеты тоже обвертка? обертка, е-мае
Только не бейте
0
Эксперт Python
 Аватар для unfindable_404
693 / 471 / 204
Регистрация: 22.03.2020
Сообщений: 1,051
22.11.2020, 12:21
Что-то типо этого?
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
def dekor(bool_):
    def wrap1(func):
        def wrap2(*args):
            if bool_:
                print('Запускаю')
                func(*args)
            else:
                print("Функция ничего не делает")
        return wrap2
    return wrap1
 
 
@dekor(True)
def foo1(a):
    print(a)
 
 
@dekor(False)
def foo2(a):
    print(a)
 
 
foo1(123)
 
foo2(123)
0
0 / 0 / 0
Регистрация: 22.11.2020
Сообщений: 3
22.11.2020, 12:24  [ТС]
Цитата Сообщение от unfindable_404 Посмотреть сообщение
@dekor(True)
Ааа, так декораторам можно передавать аргументы... Благодарю
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
22.11.2020, 12:32
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
def dekor(is_enable=True):
    def wrapper(func):
        def stub(*args, **kwargs):
            print("Функция ничего не делает")
            
        if is_enable:
            return func
        return stub
    return wrapper
 
 
@dekor(is_enable=True)
def foo1(a):
    print(a)
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
22.11.2020, 16:42
Цитата Сообщение от PYTHON22891-920 Посмотреть сообщение
Ааа, так декораторам можно передавать аргументы...
Цитата Сообщение от Welemir1 Посмотреть сообщение
каким образом декоратор получает условие? в аргументах?
ааа, так ты начал похождения не прочитав главу в книге о декораторах! прискорбно
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.11.2020, 16:42
Помогаю со студенческими работами здесь

Похождения коня
Добрый день! Пишу программу для решения шахматной задачи "Похождения коня," ( Условие : Требуется обойти конем все 64 клетки...

Похождения шахматного коня
На С нужно написать программу, которая будет выводить минимальное кол-во ходов коня до заданной точки. Задаётся размер поля, начальные и...

Программа для похождения тестов
Всем привет. Помогите пожалуйста. В общем у меня дан файл, в нём содержатся вопрос и ответ в одной строке(Пример: Vopros bla bla bla? Otvet...

из EM_STREAMOUT в EM_STREAMIN, или зацикленные похождения капитана CALLBACK
Всем привет, есть желание скопировать часть текста одного окна richedit в другой. Не мудрствуя лукаво, составлены два коллбека и...

Что нужно читать про архитектуру компьютера, про аспекты самого программирования, про компьютерные сети?
Заканчиваю книжку автора Лафоре по с++, но правда далее буду учить java, так как из фирм в моем городе многие набирают новичков по данному...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru