python (157)

Як мати справу з виключеннями в Python

Ми розглянемо обробку помилок — від найосновніших принципів й до визначення ваших власних винятків. Ви дізнаєтесь, чому іноді краще не перехоплювати винятки, та як створити шаблон, що буде корисним розробникам, які працюватимуть з вашим кодом в майбу...

Codeguida · 24 вересня 2018 · 110

Поради по роботі з БД у Django

ORM відкриває розробникам чудові можливості, але таке абстрагування доступу до БД має свою ціну. Якщо ви заглибитесь у цю тему і спробуєте змінити деякі налаштування за замовчуванням, ви побачите, що насправді можна отримати ще більше користі. У стат...

Codeguida · 21 лютого 2019 · 67

Самоорганізовані карти: теорія та реалізація на Python з NumPy

Сьогодні розглянемо модель навчання без нагляду, відому як самоорганізована карта, або Self-Organizing Maps (SOM), а також її реалізацію на Python. Ми будемо використовувати приклад кольорової моделі RGB для навчання SOM і демонстрації її швидкодії т...

Codeguida · 01 листопада 2021 · 91

Розбираємося з оператором `for`

У цій частині циклу статей про синтаксичний цукор Python ми розглянемо оператор for. Ми поринемо у C-код CPython, але розуміння або навіть читання цих частин допису не обов'язкове, щоб зрозуміти, як це все працює. Байт-код Почнімо з простого оператор...

Codeguida · 07 липня 2021 · 52

Пильний погляд на роботу f-рядків Python

PEP 498 ввів новий механізм форматування рядків, відомий як Інтерполяція Рядкових Літералів (Literal String Interpolation) або, частіше, як F-рядки (через символ f, що передує рядковому літералу). F-рядки забезпечують стислий і зручний спосіб вбудову...

Codeguida · 04 вересня 2017 · 128

Багатопотоковість в Python

Запуск декількох потоків аналогічний запуску декількох програм, але з декількома перевагами: Кілька потоків всередині одного процесу займають один простір даних з головним потоком і завдяки цьому їм набагато легше взаємодіяти та обмінюватися даними...

Codeguida · 01 січня 2021 · 221

Що вам слід вивчити в 2017-му

Індустрія розробки програмного забезпечення впевнено рухається вперед. В 2016-му ми бачили релізи відомих мов програмування, фреймворків та інструментів, що допомагають нам в роботі. І відслідкувати за всім цим розмаїттям стає все складніше, тому ми...

Codeguida · 3 роки тому · 6

Чи варто переходити з Python на Nim заради продуктивності?

Nim — це поєднання синтаксису Python і продуктивності C Кілька тижнів тому я бродив по GitHub і натрапив на цікавий репозиторій: проєкт був повністю написаний на мові Nim. До цього я з ним не стикався, і в цей раз вирішив розібратися, що це за...

Alex · 23 липня 2020 · 299

Логування в Python

Майже будь-який розробник не уявляє своєї роботи без логів. З ними легше зрозуміти особливості роботи програми, виявити сценарії поведінки, про які ви і не підозрювали. Логи можна порівняти з додатковою парою очей, що постійно спостерігають за викона...

Codeguida · 18 червня 2019 · 25

Проект вихідного дня, що зміг

Про що стаття? Дисклеймер: основна частина цієї статті була написана ще у лютому 2023, але часу та натхнення довести її до кінця не вистачало. Забігаючии наперед скажу, що розробляв це добро наприкінці січня, з тих пір вийшло кілька десятків оновлень...

Oleh Rybalchenko · 11 листопада 2023 · 271 · 1

asyncio на прикладі

Всі ми вже чули про асинхронність, про asyncio, про async/await. Ще більше пітонерів чули про потоки та модуль threading. Сьогодні я б хотів порівняти їх на прикладі скрипту, що буде перевіряти CMS сайту. Тут я не буду описувати, що таке асинхронніст...

Codeguida · 23 грудня 2021 · 31

Що таке глобальне блокування інтерпретатора Python (GIL)?

Глобальне блокування інтерпретатора Python або GIL, простими словами, - це м'ютекс (або замок), який дозволяє лише одному потоку утримувати контроль над інтерпретатором Python. Це означає, що тільки один потік може перебувати у стані виконання в будь...

Alex · 19 березня · 118