🎸 10 причин, по которым стоит выбрать Django вместо FastAPI
FastAPI предлагает производительное, асинхронное, компактное и современное решение для разработки бэкенда и API на Python по сравнению с более зрелым, но несколько более громоздким Django. И всё же многие опытные бэкендеры предпочитают Django. Один из таких разработчиков поделился доводами в пользу Django.
🔗 Читать статью
🔗 Зеркало
FastAPI предлагает производительное, асинхронное, компактное и современное решение для разработки бэкенда и API на Python по сравнению с более зрелым, но несколько более громоздким Django. И всё же многие опытные бэкендеры предпочитают Django. Один из таких разработчиков поделился доводами в пользу Django.
🔗 Читать статью
🔗 Зеркало
😁20👍6🤔5🌚3❤2👏1🥱1💯1
🕛 Справочник по временной сложности разных структур данных Python
В блоге Python Morsels опубликовали своего рода шпаргалку по Python Big O. Эта нотация позволяет оценить, как быстро увеличивается время выполнения операций в зависимости от размера данных.
В статье перечислены временные сложности распространённых операций со следующими структурами данных:
▫️Списки;
▫️Двухсторонние очереди;
▫️Словари;
▫️Множества;
▫️Counter;
▫️Очереди с приоритетом.
🔗 Читать статью
В блоге Python Morsels опубликовали своего рода шпаргалку по Python Big O. Эта нотация позволяет оценить, как быстро увеличивается время выполнения операций в зависимости от размера данных.
В статье перечислены временные сложности распространённых операций со следующими структурами данных:
▫️Списки;
▫️Двухсторонние очереди;
▫️Словари;
▫️Множества;
▫️Counter;
▫️Очереди с приоритетом.
🔗 Читать статью
👍14❤1
В Python, методы
__init__()
и __new__()
используются при создании объектов, но играют разные роли. Если коротко: __init__
обрабатывает инициализацию объекта, а __new__
— его создание. Так,
__new__
вызывается автоматически при создании экземпляра и, собственно, возвращает созданный объект. Метод __init__
вызывается каждый раз при возвращении этого созданного объекта и инициализирует его начальным состоянием, не возвращая ничего. То есть сначала вызывается __new__
, а потом __init__
#вопросы_с_собеседований
Please open Telegram to view this post
VIEW IN TELEGRAM
❤31👍11
🐍🎓 Бесплатный курс Python от Гарварда
Это вводный курс по программированию. Рассказывает о том, как писать код, как его тестировать и отлаживать. Подойдёт новичкам. Состоит из видеолекций, к которым прилагаются слайды и код.
▪️Функции и переменные
▪️Условные выражения
▪️Циклы
▪️Исключения
▪️Библиотеки
▪️Юнит-тесты
▪️Файловый ввод-вывод
▪️Регулярные выражения
▪️Объектно-ориентированное программирование
▪️Дополнительные особенности языка
🔗 Ссылка на плейлист целиком
🔗 Ссылка на сайт курса с остальными материалами
Это вводный курс по программированию. Рассказывает о том, как писать код, как его тестировать и отлаживать. Подойдёт новичкам. Состоит из видеолекций, к которым прилагаются слайды и код.
▪️Функции и переменные
▪️Условные выражения
▪️Циклы
▪️Исключения
▪️Библиотеки
▪️Юнит-тесты
▪️Файловый ввод-вывод
▪️Регулярные выражения
▪️Объектно-ориентированное программирование
▪️Дополнительные особенности языка
🔗 Ссылка на плейлист целиком
🔗 Ссылка на сайт курса с остальными материалами
YouTube
CS50P - Lecture 0 - Functions, Variables
This is CS50P, CS50's Introduction to Programming with Python. Enroll for free at https://cs50.edx.org/python. Slides, source code, and more at https://cs50.harvard.edu/python. Playlist at https://www.youtube.com/playlist?list=PLhQjrBD2T3817j24-GogXmWqO5Q5vYy0V.…
👍19
💫 Sphinx — инструмент для создания красивых документаций
Sphinx использует язык разметки reStructuredText.
Особенности:
▫️Генерация множества форматов: HTML, PDF, EPUB, TeX и др.
▫️ Лёгкое определение иерархической структуры с автоматическими ссылками.
▫️ Автоматическое создание индексов, которые упрощают навигацию по документации.
▫️ Автоматическая подсветка кода.
▫️ Расширяемая экосистема, поддержка множества плагинов, например для работы с Jupyter notebooks.
▫️Поддержка не только Python, но и C, C++, JavaScript и др.
Сегодня вышла последняя версия Sphinx 7.3.6.
🔗 Страница Sphinx на PyPI
🔗 Репозиторий
🔗 Документация
Sphinx использует язык разметки reStructuredText.
Особенности:
▫️Генерация множества форматов: HTML, PDF, EPUB, TeX и др.
▫️ Лёгкое определение иерархической структуры с автоматическими ссылками.
▫️ Автоматическое создание индексов, которые упрощают навигацию по документации.
▫️ Автоматическая подсветка кода.
▫️ Расширяемая экосистема, поддержка множества плагинов, например для работы с Jupyter notebooks.
▫️Поддержка не только Python, но и C, C++, JavaScript и др.
Сегодня вышла последняя версия Sphinx 7.3.6.
🔗 Страница Sphinx на PyPI
🔗 Репозиторий
🔗 Документация
👍4❤2
💬 Куда вы предпочитаете обращаться за подсказками, если нужно сделать что-то новое?
❤️ — YouTube-туториалы
👍 — документация
#интерактив
❤️ — YouTube-туториалы
👍 — документация
#интерактив
👍102❤49
Это статья-шпаргалка, которая охватывает основные сценарии использования f-строк:
Последняя, в частности, выглядит так:
val = 1.23e3 # 1.23 * 10^3
print(f"Example 1: {val:e}")
print(f"Example 2: {val:E}")
val = 0.5
print(f"Example 1: {val:%}")
print(f"Example 2: {val:.0%}")
val = 1
print(f"1: {val:1d}")
print(f"2: {val:2d}")
print(f"3: {val:3d}")
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35
🐍 Подборка Python-проектов
Эти проекты вы можете использовать для обучения или наполнения портфолио
☀️ Прогнозирование солнечных затмений с помощью Python
✍️ Создание блога с помощью Django
📊 Создание дашборда с данными из PostgreSQL
😎 Сайт на Python без знания HTML/CSS/JS — FastUI
👾 Пишем клона Space Invaders с помощью Turtle
🎨 Django-приложение для придания цвета чёрно-белым фотографиям
Эти проекты вы можете использовать для обучения или наполнения портфолио
☀️ Прогнозирование солнечных затмений с помощью Python
✍️ Создание блога с помощью Django
📊 Создание дашборда с данными из PostgreSQL
😎 Сайт на Python без знания HTML/CSS/JS — FastUI
👾 Пишем клона Space Invaders с помощью Turtle
🎨 Django-приложение для придания цвета чёрно-белым фотографиям
👍18
🚀 Как быстро Python может спарсить миллиард строк данных?
Парень сделал ролик, в котором сравнил лучшие методики Python-разработчиков для решения One Billion Row Challenge. Участникам челленджа нужно написать программу, которая читает текстовый файл с миллиардом строк, вычисляет минимальное, среднее и максимальное значения температуры для каждой метеостанции и выводит результаты.
🐍 В ролике автор начал с разбора простейшего подхода к решению задачи, который требует более 9 минут. Переход с CPython на PyPy сократил время до приблизительно 5 минут. Далее парень разобрал самое быстрое решение на чистом Python (с использованием только встроенных библиотек), которое занимает 9.9 секунды.
Помимо этого, автор показал решения с привлечением сторонних библиотек: Polars и DuckDB(и они были хороши) .
🔗 Смотреть ролик
Парень сделал ролик, в котором сравнил лучшие методики Python-разработчиков для решения One Billion Row Challenge. Участникам челленджа нужно написать программу, которая читает текстовый файл с миллиардом строк, вычисляет минимальное, среднее и максимальное значения температуры для каждой метеостанции и выводит результаты.
🐍 В ролике автор начал с разбора простейшего подхода к решению задачи, который требует более 9 минут. Переход с CPython на PyPy сократил время до приблизительно 5 минут. Далее парень разобрал самое быстрое решение на чистом Python (с использованием только встроенных библиотек), которое занимает 9.9 секунды.
Помимо этого, автор показал решения с привлечением сторонних библиотек: Polars и DuckDB
🔗 Смотреть ролик
YouTube
How Fast can Python Parse 1 Billion Rows of Data?
To try everything Brilliant has to offer—free—for a full 30 days, visit https://brilliant.org/DougMercer .
You’ll also get 20% off an annual premium subscription.
———————————————————————————————
Sign up for 1-on-1 coaching at https://dougmercer.dev
————…
You’ll also get 20% off an annual premium subscription.
———————————————————————————————
Sign up for 1-on-1 coaching at https://dougmercer.dev
————…
🔥23❤4👍1
В новой статье рассказываем, какие разделы математики нужно знать для разработки современных генеративных моделей.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤5❤🔥1
📚Напоминаем про наш полный курс «Самоучитель по Python для начинающих»
Мы написали и собрали для вас в одну подборку все 25 глав и 230 практических заданий!
🐍 Часть 1: Особенности, сферы применения, установка, онлайн IDE
🐍 Часть 2: Все, что нужно для изучения Python с нуля – книги, сайты, каналы и курсы
🐍 Часть 3: Типы данных: преобразование и базовые операции
🐍 Часть 4: Методы работы со строками
🐍 Часть 5: Методы работы со списками и списковыми включениями
🐍 Часть 6: Методы работы со словарями и генераторами словарей
🐍 Часть 7: Методы работы с кортежами
🐍 Часть 8: Методы работы со множествами
🐍 Часть 9: Особенности цикла for
🐍 Часть 10: Условный цикл while
🐍 Часть 11: Функции с позиционными и именованными аргументами
🐍 Часть 12: Анонимные функции
🐍 Часть 13: Рекурсивные функции
🐍 Часть 14: Функции высшего порядка, замыкания и декораторы
🐍 Часть 15: Методы работы с файлами и файловой системой
🐍 Часть 16: Регулярные выражения
🐍 Часть 17: Основы скрапинга и парсинга
🐍 Часть 18: Основы ООП – инкапсуляция и наследование
🐍 Часть 19: Основы ООП – абстракция и полиморфизм
🐍 Часть 20: Графический интерфейс на Tkinter
🐍 Часть 21: Основы разработки игр на Pygame
🐍 Часть 22: Основы работы с SQLite
🐍 Часть 23: Основы веб-разработки на Flask
🐍 Часть 24: Основы работы с NumPy
🐍 Часть 25: Основы анализа данных с Pandas
Мы написали и собрали для вас в одну подборку все 25 глав и 230 практических заданий!
🐍 Часть 1: Особенности, сферы применения, установка, онлайн IDE
🐍 Часть 2: Все, что нужно для изучения Python с нуля – книги, сайты, каналы и курсы
🐍 Часть 3: Типы данных: преобразование и базовые операции
🐍 Часть 4: Методы работы со строками
🐍 Часть 5: Методы работы со списками и списковыми включениями
🐍 Часть 6: Методы работы со словарями и генераторами словарей
🐍 Часть 7: Методы работы с кортежами
🐍 Часть 8: Методы работы со множествами
🐍 Часть 9: Особенности цикла for
🐍 Часть 10: Условный цикл while
🐍 Часть 11: Функции с позиционными и именованными аргументами
🐍 Часть 12: Анонимные функции
🐍 Часть 13: Рекурсивные функции
🐍 Часть 14: Функции высшего порядка, замыкания и декораторы
🐍 Часть 15: Методы работы с файлами и файловой системой
🐍 Часть 16: Регулярные выражения
🐍 Часть 17: Основы скрапинга и парсинга
🐍 Часть 18: Основы ООП – инкапсуляция и наследование
🐍 Часть 19: Основы ООП – абстракция и полиморфизм
🐍 Часть 20: Графический интерфейс на Tkinter
🐍 Часть 21: Основы разработки игр на Pygame
🐍 Часть 22: Основы работы с SQLite
🐍 Часть 23: Основы веб-разработки на Flask
🐍 Часть 24: Основы работы с NumPy
🐍 Часть 25: Основы анализа данных с Pandas
❤35👍12🔥3❤🔥1
Хардкорный курс по математике для тех, кто правда любит математику!
Начать с вводных занятий можно здесь, ответив всего на 4 вопроса – https://proglib.io/w/8f9d3a94
Что вас ждет:
– Вводный урок от CPO курса
– Лекции с преподавателями ВМК МГУ по темам: теория множеств, непрерывность функции, основные формулы комбинаторики, матрицы и операции над ними, градиентный спуск
– Практические задания для закрепления материала и ссылки на дополнительные материалы.
⚡️ Переходите и начинайте учиться уже сегодня – https://proglib.io/w/8f9d3a94
Начать с вводных занятий можно здесь, ответив всего на 4 вопроса – https://proglib.io/w/8f9d3a94
Что вас ждет:
– Вводный урок от CPO курса
– Лекции с преподавателями ВМК МГУ по темам: теория множеств, непрерывность функции, основные формулы комбинаторики, матрицы и операции над ними, градиентный спуск
– Практические задания для закрепления материала и ссылки на дополнительные материалы.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥3👍3❤1
Есть следующий код:
a = [[]] * 4
a[0].append("seriously?")
print(a)
Попробуйте, не глядя в ответ, сказать, что он выведет.
Ответ:
Если не угадали, не переживайте: вы не один такой. Дело здесь в следующем.
'a' * 3
выведет ‘aaa’
. Аналогичным образом, [[]] * 4
выведет [[], [], [], []]
.В Python всё является объектами, и доступ к каждому объекту осуществляется по ссылке. Так, в
[[]]
внутренний список является ссылкой на объект пустого списка. Оператор * просто копирует эту ссылку четыре раза, в результате получается [[], [], [], []]
. Все эти повторяющиеся внутренние списки являются ссылками на один и тот же изначальный пустой список. Можно проверить это через id
:print([id(x) for x in a])
Поэтому неудивительно, что изменение первого элемента в
a
влечёт за собой изменение всех остальных элементов.Please open Telegram to view this post
VIEW IN TELEGRAM
👍49❤8❤🔥3💯3🔥2
Forwarded from Библиотека джависта | Java, Spring, Maven, Hibernate
🔍💼 Исследование рынка: 8 наиболее востребованных языков программирования в 2024 году
Результаты исследования рынка IT-вакансий, проведенного DevJobsScanner. Были проанализированы 14 миллионов объявлений и выявлены 8 наиболее востребованных языков программирования.
Читать статью
#почитать
Результаты исследования рынка IT-вакансий, проведенного DevJobsScanner. Были проанализированы 14 миллионов объявлений и выявлены 8 наиболее востребованных языков программирования.
Читать статью
#почитать
👍8🤔1🌚1