Python 2/3

Mar. 3rd, 2019 09:40 pm
elglin: (Default)
[personal profile] elglin
Встала передо мной, как всегда, оригинальнейшая задача проверки принадлежности айпишника сети. Как человек, писавший еще на С и BSD Sockets, я решил задачу в лоб: конверсия строчного айпишника в бинарный, там AND c маской и все такое. Ну да, уличная магия со сдвигами влево-вправо, про которые из молодежи знают полтора анонимуса. Импортировать socket для того, что решается бинарной арифметикой, как-то оверкилл.
И тут мне говорят: import ipaddress и вообще не парься. Ну я и подумал, что я олень.
А вот оказалось, что не совсем олень. Потому как, во-первых, StackOverflow жалуется на то, что через ipaddress оно, конечно, работает, но почему-то намного медленнее уличной магии, а во-вторых, ipaddress в стандартную библиотеку впилен только в тройке, а у меня везде двойка, и никакого, естественно, на них PyPi.

А еще увидел в коде коллеги голимую функциональщину, отложил кирпичей - но, поскольку оно работает, ну и пусть его работает.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org

Page generated May. 13th, 2026 10:33 am
Powered by Dreamwidth Studios