2013-04-23 2 views
1

это довольно тривиально, но это меня подтачивает, и я думал, что выброшу его там.pep8 и использование конструктора в качестве валидатора

библиотека python netaddr отличная. Я использую его для кучи вещей, включая проверку IP-адреса. Чтобы сделать это, я использую что-то вроде

try: 
    ddd = IPRange(split[0], split[1]) 
except: 
    return False 

И это прекрасно работает, но PEP8 ненавидит, что я создаю «ддд», но никогда не использовать его. Есть ли другой, лучший, более чистый способ сделать это? Спасибо

+5

Не привязывать 'IPRange (split [0], split [1])' к переменной? – Volatility

+0

Я бы добавил комментарий выше строки 'try:', указывающий, что вы хотите проверить правильность IP-адреса. Это должно быть достаточно ясно! –

+0

Вы используете 'ddd' после try/except block? – gatto

ответ

2

Если вам не нужна переменная «ddd», то не объявляйте/не назначайте ее. Если это модульная переменная, которую можно использовать из других модулей, вы не можете ее избежать. Я бы посоветовал вам добавить комментарий, чтобы объяснить, почему эта переменная одна в модуле.

Кроме того, это считается плохой практикой иметь голую except:, вы должны использовать по крайней мере except Exception:

Это в PEP8 тоже:

При ловле исключения, упоминаются конкретные исключения, когда это возможно, вместо использования голой кроме:.

+0

Где «Исключение» также может быть одним из http://pythonhosted.org/netaddr/api.html#custom-exceptions – invert

Смежные вопросы