Блог python программиста
Изображение гика

Блог питониста

Делаем navbar

Иногда нужно сделать navbar и переключать класс active на выбранной ссылке. Это можно сделать по-разному, расскажу об одном решении. Допустим у вас есть простое Flask - приложение:

Читать далее

Попытка разобраться с многопоточностью

Многопоточность подразумевает, что несколько потоков будут исполняться параллельно. В идеале использование многопоточности ускоряет выполнение программы. Однако, в python есть такая штука как GIL, Global Interpreter Lock, которая обеспечивает то, что в каждый момент времени активен только один поток.

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

Читать далее

Пишем будильник на питоне

Хочется написать себе будильник, который стартовал бы в определенное время, проигрывал бы несколько композиций и выключался бы до следующего раза. Это возможно сделать, используя, например, библиотеку gstreamer. 

Я буду писать его под Ubuntu, поскольку использую данную ОС дома. Также можно попробовать сделать то же самое под Raspbian, если у вас есть Raspberry. Будильник будет работать как демон, тоесть не будет блокировать терминал,  а будет работать в фоновом режиме.

Читать далее

Какие вопросы задают на собеседованиях на python junior'a/middl'a

У меня есть некоторый опыт прохождения python - собеседований на позиции junior/middle python разработчика и я им поделюсь. Эти вопросы можно разделить на такие группы: основы python, более глубокие вопросы про python, обще-алгоритмические вопросы, вопросы про другие языки, вопросы по базам данных.

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

Читать далее

Как сложить числа от 1 до 100 (перевод)

Согласно распространенной истории, школьный учитель математики Гаусса был ленив. Чтобы чем-то занять детей на долгое время, а самому вздремнуть, он попросил их сложить числа от 1 до 100.

Гаусс быстро дал ответ: 5050. Так быстро? Учитель не поверил, но юный гений оказался прав. Складывать все числа от 1 до 100 - это для слабаков! Гаусс нашёл формулу:

Читать далее