170 похожих чатов

Помогите пожалуйста у меня есть функция на проверку есть ли значение

в ключе json
@config_access
def check_is_frequency_occupied(occupied_frequencies, frequency) -> bool:
return frequency in occupied_frequencies

вот код декоратора:
def config_access(func):
def wrapper(frequency):
with open(config_path, "r") as file:
config_data = load(file)

occupied_frequencies = config_data["occupied_frequencies"]
result = func(occupied_frequencies, frequency)

if config_data["occupied_frequencies"] == occupied_frequencies:
return

with open(config_path, "w") as file:
dump(occupied_frequencies, file)

return result

return wrapper

и эта функция при вызове возвращает мне None. Каким образом если я возвращаю ее результат в декораторе и сама функция не может вернуть ничего кроме True или False?

8 ответов

24 просмотра

Вероятно, выполняется строчка с голым return

https://t.me/advice17/47

Проблема в вашем коде возникает из-за отсутствия явного return внутри декоратора config_access. При вызове check_is_frequency_occupied вы получаете None, потому что в конечном итоге функция декоратора wrapper возвращает None. Чтобы исправить это, вам нужно явно вернуть результат выполнения функции func из декоратора wrapper. Вот исправленный код декоратора: python def config_access(func): def wrapper(frequency): with open(config_path, "r") as file: config_data = load(file) occupied_frequencies = config_data["occupied_frequencies"] result = func(occupied_frequencies, frequency) if config_data["occupied_frequencies"] == occupied_frequencies: return result # Вернуть результат выполнения функции with open(config_path, "w") as file: dump(occupied_frequencies, file) return result return wrapper Теперь, когда вызывается функция check_is_frequency_occupied, она будет возвращать ожидаемый результат (`True` или `False`). Так сказал чатжпт

Gorlomi
Проблема в вашем коде возникает из-за отсутствия я...

Зачем джипити, выше ответили же уже. Он присваивает список, потом говорит если равен тому что присвоил то return зачем-то

Сергей
Зачем джипити, выше ответили же уже. Он присваивае...

Я чайник. Просто задал вопрос его чатужпт

Gorlomi
Я чайник. Просто задал вопрос его чатужпт

Не надо так делать, он часто хуйню советует

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта