Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL
Гарвардский курс по веб-разработке на Python и JS
Курс HarvardX: CS50's Web Programming продолжает легендарный CS50, фокусируясь на разработке веб-приложений с Python, JavaScript и SQL. Тут разбирают дизайн БД, масштабируемость, безопасность и UI.
В процессе обучения есть и практические проекты, среди которых создание API, интерактивных интерфейсов и использование облачных сервисов GitHub и Heroku.
Одним словом — годнота
#курс #web #js #python #en
Что объединяет спорт, e-commerce и цифровые технологии? Правильно, кокос
А точнее Кокос Hackathon 2024, который пройдёт в период с 3 по 18 октября. Хакатон пройдёт в онлайн-формате так что каждый сможет побороться за призовой фонд в размере 1 000 000 рублей независимо от вашей локации.
Вас ждут два трека:
1. Разработка веб-платформы для ФК и болельщиков футбола.
2. Разработка платформы для оценки вероятности действий пользователя.
Узнать подробности и оставить заявку на участие можно до 30 сентября по ссылке.
Это #партнёрский пост
Почему not not value БЫСТРЕЕ bool в Python
По какой-то причине not not
работает быстрее, чем bool
. Вы можете это проверить самостоятельно и убедиться в таком странном поведении. В этом видео разбирается почему именно так происходит.
#видео
Работа с JSON и XML в Python: парсинг, генерация и валидация
JSON и XML — это форматы для хранения информации. Их используют для обмена данными в веб-разработке между клиентом и сервером, поэтому они часто встречаются при работе с API.
В этой статье мы расскажем, как взаимодействовать с ними при работе с Python.
#api
Плохие практики ООП в Python, которых нужно избегать
В этом видео рассматриваются распространенные ошибках в ООП на Python, которые часто совершают разработчики. Вы узнаете:
— как сохранить ваш код чистым и удобным для сопровождения;
— почему вам следует заменять ненужные классы функциями;
— зачем использовать модули вместо классов только со статическими методами;
— и как сглаживать глубокие иерархии наследования.
#видео #ооп
Простыми словами: Структуры данных в Python
Мы немного забежали вперёд и уже разобрали две популярных структуры данных — BST и B-Tree. Но давайте немного откатимся назад и кратко разберём какие вообще структуры данных используются в Python помимо деревьев и чем они отличаются.
1. Списки (Lists)
Списки — это упорядоченные изменяемые коллекции, которые могут содержать элементы любого типа. Они поддерживают произвольный доступ по индексу и предоставляют множество встроенных методов для манипуляции элементами.
my_list = [1, 2, 3, "hello", 4.5]
my_tuple = (1, 2, 3, "hello", 4.5)
my_dict = {"name": "Alice", "age": 25, "city": "New York"}
my_set = {1, 2, 3, 4, 5}
collections.deque
для эффективного выполнения операций на концах очереди.from collections import deque
my_queue = deque([1, 2, 3, 4, 5])
my_queue.append(6)
my_queue.popleft()
append()
и pop()
.my_stack = [1, 2, 3, 4, 5]
my_stack.append(6)
my_stack.pop()
class Node:
def __init__(self, data):
self.data = data
self.next = None
self.prev = None
class DoublyLinkedList:
def __init__(self):
self.head = None
class TreeNode:
def __init__(self, value):
self.value = value
self.left = None
self.right = None
# Пример простого графа с использованием словаря
graph = {
'A': ['B', 'C'],
'B': ['A', 'D', 'E'],
'C': ['A', 'F'],
'D': ['B'],
'E': ['B', 'F'],
'F': ['C', 'E']
}
Old but gold: Два простых способа преобразовать файл Python в EXE-файл
Если вы написали программу и хотите, чтобы ею могли пользоваться не только разработчики, но и простые пользователи, то стоит оформить её в удобном формате — сделать интерфейс и преобразовать файлы .exe
, чтобы программу было удобно установить. Вот именно о последнем и пойдёт речь в этой статье.
Здесь вы узнаете, в каких случаях пригодится такое преобразование и как его можно сделать различными способами:
https://www.datacamp.com/tutorial/two-simple-methods-to-convert-a-python-file-to-an-exe-file
«Если сотрудник начал проситься в отпуск, то проще уже усыпить и завести нового»
Взято из флудильни
Мини-гайд по отправке сообщений из Google Таблицы или базы данных с Python
Полезное руководство для тех, кто хочет разобраться в том, как настроить автоматическую отправку уведомлений, например, о готовности заказа. В статье разбирается вариант с таблицами Google, но вы также найдёте там информацию для привязки кода к CMS.
Вышла Visual Studio Code 1.93
И это отличная новость, ведь теперь там есть поддержка профилей, если вам нужны разные конфигурации под различные задачи, а также улучшена поддержка Python. Наконец-то питонисты смогут по полной использовать этот редактор кода.
Подробнее о нововведениях в нашей статье.
#новости #vscode
Гайд по обработке данных с помощью Pandas
Отличное руководство для новичков и тех, кто постоянно работает с Pandas. В статье досконально описаны стандартные методы фильтрации, объединения, приведения типов и другие операции, но даже для гуру найдётся пара новых приёмов. Вау-эффект гарантирован.
#гайд #pandas
Берите на заметку — лучший алгоритм для устранения багов
#кек
Как оптимизации в CPython повлияли на скорость работы Python
Автор твита на картинке заметил странное поведение Python. Когда он вызывал встроенную функцию min, производительность кода была ниже, чем если реализованный метод в самом коде.
Да, его код был написан ещё на Python 2. Сейчас ситуация стала гораздо лучше. Но почему? Автор этой статьи провёл несколько бенчмарков и поделился выводами:
https://habr.com/ru/companies/beget/articles/839348/
Головоломка «Сапёр» на Python в 66 строк и её решение вероятностным алгоритмом
Автор статьи поставил себе задачу написать менее чем за 100 строк полноценную игру «сапёр». У него получилось уложиться в 66 строк, сделав игру, которая работает в консоли.
Посмотреть на реализацию можно в статье: https://habr.com/ru/articles/833494/
#gamedev
Смогли бы написать ещё короче?
Stealth-Requests — библиотека для анонимного скреппинга веб-страниц
Причины, по которым вам может это потребоваться, могут быть совершенно разными. Как сложные алгоритмы, фиксирующие аномальное поведение на сайте и ограничивающие к ним доступ, так и более специфичные.
С помощью этой библиотеки вы сможете добиться желаемого результата благодаря возможности синтаксического анализа, реалистичным HTTP-запросам и маскировки TLS-отпечатков.
Более подробно обо всех возможностях можно прочитать на странице проекта.
#инструменты #веб
«База данных» в гугл таблицах для телеграм-бота
Практически все боты используют какое-нибудь хранилище информации. Чаще всего применяются базы данных, но иногда их использование может быть избыточным, особенно если вам не нужны ACID-транзакции и есть желание менять данные руками в максимально простом интерфейсе.
В таком случае можно воспользоваться простыми google-таблицами. Как именно, рассказали в статье.
#telegram #google
Сколько времени нужно, чтобы освоить Python?
Согласно исследованию «Factors Affecting Students' Attitudes toward Computer Programming», проведённому в 2019 году в Vilnius University, освоение поделили на три стадии:
1. Базовое понимание. С постоянными усилиями и структурированным планом обучения вы можете приобрести базовое понимание синтаксиса Python и основных концепций в течение 3-4 недель. В этом этапе обычно изучаются переменные, типы данных, условные операторы, циклы, функции.
2. Средняя компетенция. Эта стадия наступает обычно спустя шесть месяцев. Здесь вы становитесь знакомы с более продвинутыми темами, такими как работа с файлами, обработка исключений, модули, библиотеки и работа с внешними источниками данных.
3. Продвинутые навыки могут занять несколько лет работы над реальными проектами. На этом этапе вы углубляетесь в конкретные области, такие как веб-разработка, анализ данных, научные вычисления, машинное обучение или другие специализированные области. Это тоже требует практики.
А на каком этапе вы?
❤️ — в самом начале пути
🤯 — второй этап, инфа сотка
🗿 — я в своём сознании настолько преисполнился, что мне этот Python абсолютно понятен
#советы
Пора перестать использовать Python 3.8
По состоянию на сентябрь 2024, около 14% пакетов, загруженных из PyPI, были для Python 3.8. А это примерно 250 миллионов пакетов в день.
И всё бы ничего, но с октября прекращается поддержка этой версии языка и новых исправлений безопасности больше не будет. Если для вас это всё ещё не аргумент, то прочитайте эту статью, чтобы понять зачем вам нужно обновиться:
https://pythonspeed.com/articles/stop-using-python-3.8/
Создание фуллстек-приложения с помощью Django, Vue.js и Flowbite
Эти три технологии обеспечивают быстрый и простой способ для начинающих освоить разработку веб-приложений, создавая при этом красивый пользовательский интерфейс.
В этом руководстве вы увидите, как настроить эти инструменты и создать с помощью них первый проект:
https://chesda.hashnode.dev/django-vue-flowbite
#django #vue #веб
Разбор паттерна Singleton в Python
Singleton (Одиночка) — это шаблон предоставления глобального доступа к состоянию, который гарантирует, что объект всегда будет один и тот же. Это один из первых паттернов, которые изучают разработчики.
В этом видео вы сможете разобраться в том, как именно он работает и для чего нужен. А также узнаете о Monostate.
#паттерны #singleton #видео
Большой каталог шпаргалок на все случаи жизни
Ловите репозиторий, где собраны более 30 шпаргалок на разные темы. Здесь найдут подсказки сетевики, фронтендеры, бэкендеры, линуксоиды и пользователи windows.
Если вам чего-то не хватило, то вы можете предложить свою шпаргалку в качестве контрибьютора.
#шпаргалки
Click — удобный инструмент для создания CLI на Python
Если вам нужно создать интерфейс командной строки для вашего проекта, то этот пакет позволит сделать это максимально просто.
Инструмент бесплатный и с отличной документацией: https://click.palletsprojects.com/en/8.1.x/
#инструменты #библиотека #cli
256 попугаев дней с начала года прошли!
А это значит, что наступил День программиста! Мы с друзьями приготовили для вас небольшой сюрприз. Переходите по ссылке и трясите коробку, чтобы забрать его: https://tprg.ru/aKie
Делитесь в комментариях, что вам выпало.
Вы всё ещё логируете через f-string? Тогда мы идём к вам
В этом видео вы узнаете об основной особенности логирования в Python, связанной с рендером строк. Вы изучите основные особенности стандартной Python библиотеки logging и получите «best practices» промышленного логирования.
После такого f-string, конечно, останутся в вашем арсенале. Но вот захотите ли вы их использовать также часто, как раньше?
#видео #основы #bestpractices
Простыми словами: B-дерево
В прошлом посте я рассказывал про бинарное дерево поиска. Теперь давайте разберём ещё одну популярную структуру данных.
B-дерево (B-tree) — это самобалансирующаяся структура данных, которая хранит данные в отсортированном виде, позволяя эффективно выполнять операции поиска, вставки и удаления. B-деревья часто используются в системах хранения данных, таких как базы данных и файловые системы, благодаря своей способности справляться с большими объемами данных и минимизировать количество операций чтения/записи на диске.
Структура B-дерева выглядит следующим образом:
1. Корень дерева: он содержит указатели на свои дочерние узлы.
2. Внутренние узлы: эти узлы содержат ключи и указатели на другие узлы дерева.
3. Листовые узлы: узлы на самом нижнем уровне дерева, которые содержат сами данные или указывают на них.
//пример бинарного дерева
[10, 20]
/ | \
[1, 2, 5] [15, 18] [25, 30, 35]
Toolfolio — все нужные инструменты для ИИ и не только в одном месте
Берите на заметку и не теряйте этот сервис. Здесь собраны полезные нейронки под любую задачу, куча бесплатных аналогов популярных программ, а также целые библиотеки плагинов для ваших любимых сервисов.
#инструменты
Простой Python-скрипт + ИИ = оптимизация ваших рабочих процессов
Формула простая, как и этот туториал, после которого вы сможете использовать голосовой ввод с автоматической транскрибацией речи в текст в любом поле ввода на вашем компьютере. Важной особенностью скрипта будет его работа в фоне и автоматический вызов голосом по необходимости.
«Галя, у нас отмена» — и можно начинать курсач с чистого листа. Попробуете?
#гайд #ии #интересное
Давайте проверим ваши знания работы бинарного дерева поиска. Посмотрите на изображение и ответьте на вопрос ниже.
#викторина #bst