Почему возникает эта ошибка?

Здравствуйте! Почему возникает ошибка Local variable record might be referenced before assignment на последней строке ?
def fromjson (json):
    data = json.loads(json)
    if data.type !='SRV' and data.type!='MX':
        record = f'{data.host} IN {data.type} {data.content}'
    if data.type=='MX':
        record = f'{data.host} IN MX {data.priority} {data.content}'
    if data.type=='SRV':
        record = f"_{data.service}._{data.proto}.{data.name}. IN SRV {data.priority} {data.weight} {data.port} {data.target}"
    return record
  • Вопрос задан
  • 766 просмотров
Решения вопроса 1
longclaps
@longclaps
Наши телепаты полагают, что ваша data не имеет всех тех атрибутов, которых от неё хотят ваши f-стороки.
Если у вас есть руки, то, отрубая ими кусочки f-сторок, вы сможете локализовать неисправность.
Кстати, давно не видал столь уродского кода.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
nonname
@nonname
Если все if'ы ложные, то что вернёт return record? Вот на это и ругается.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы