Please open Telegram to view this post
VIEW IN TELEGRAM
🐍 Как сделать снимок экрана с помощью Python
Мы рассмотрим, как сделать снимок экрана с помощью python в рабочем столе с помощью пакета pyautogui, который используется для автоматизации графического интерфейса.
🟢 Сначала установим пакет, выполнив команду
🟢 Создание снимков экрана с помощью python
Чтобы сделать снимок экрана с помощью python в рабочем столе, импортируйте модуль pyautogui, который имеет множество функций, но в данном случае мы будем использовать метод снимка экрана.
При этом будет сделан скриншот всего экрана и сохранен в текущем рабочем каталоге, для сохранения изображения в другом каталоге измените путь в функции save.
🟢 Сохранение снимков экрана в папке
• Github
@pro_python_code
Мы рассмотрим, как сделать снимок экрана с помощью python в рабочем столе с помощью пакета pyautogui, который используется для автоматизации графического интерфейса.
pip install pyautogui
Чтобы сделать снимок экрана с помощью python в рабочем столе, импортируйте модуль pyautogui, который имеет множество функций, но в данном случае мы будем использовать метод снимка экрана.
import pyautogui
screen = pyautogui.screenshot()
screen.save("my_image.png")
При этом будет сделан скриншот всего экрана и сохранен в текущем рабочем каталоге, для сохранения изображения в другом каталоге измените путь в функции save.
import pyautogui
screen = pyautogui.screenshot()
screen.save("test/image/my_image.png")
• Github
@pro_python_code
Please open Telegram to view this post
VIEW IN TELEGRAM
Как создать на Python приложение для потокового видео, которым можно управлять с помощью физических кнопок?
Мы будем использовать микроконтроллер (например, Arduino или Raspberry Pi) для взаимодействия с физическими кнопками и обмена данными с нашей программой на Python. Цель – запускать и останавливать потоковое видео нажатием физических кнопок.
Необходимые условия:
Прежде чем мы начнем, вам потребуется следующее:
1. Компьютер с установленным Python.
2. Веб-камера, подключенная к компьютеру.
3. Микроконтроллер (например, Arduino, Raspberry Pi) с подключенными к нему кнопками.
4. Базовые знания по программированию на языке Python.
Настройка оборудования
• Подключите физические кнопки к микроконтроллеру.
• Убедитесь, что у вас есть необходимые резисторы и провода для подключения кнопок.
• Напишите простую микропрограмму для микроконтроллера, которая будет распознавать нажатие и отпускание кнопок.
Установление связи
В данном примере мы будем использовать последовательный интерфейс USB.
Написание кода на языке Python
import cv2
# Initialize the webcams
cap_self = cv2.VideoCapture(0)
cap_other = cv2.VideoCapture(1) # Change the index to the appropriate camera for the other user
# Check if the webcams are opened successfully
if not cap_self.isOpened() or not cap_other.isOpened():
print("Error: Could not open one or both of the webcams.")
exit()
# Create a window to display both video feeds side by side
cv2.namedWindow("Video Chat App", cv2.WINDOW_NORMAL)
cv2.resizeWindow("Video Chat App", 640, 480) # Adjust the window size as needed
while True:
# Read frames from both webcams
ret_self, frame_self = cap_self.read()
ret_other, frame_other = cap_other.read()
if not ret_self or not ret_other:
print("Error: Could not read frames from one or both of the webcams.")
break
# Resize frames to have the same dimensions (optional)
frame_self = cv2.resize(frame_self, (320, 240))
frame_other = cv2.resize(frame_other, (320, 240))
# Concatenate frames horizontally to display side by side
display_frame = cv2.hconcat([frame_self, frame_other])
# Display the concatenated frame in the window
cv2.imshow("Video Chat App", display_frame)
# Break the loop when the 'q' key is pressed
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# Release the webcams and destroy the window
cap_self.release()
cap_other.release()
cv2.destroyAllWindows()
Тестирование установки
Загрузите в микроконтроллер микропрограмму для обнаружения нажатия кнопок. Убедитесь, что она посылает команду “START” (s – ‘старт’ в моем коде) при нажатии одной кнопки и команду “STOP” (q – ‘стоп’ в моем коде) при нажатии другой кнопки.
Запустите программу на Python на своем компьютере.
При нажатии соответствующей кнопки на микроконтроллере вы
должны увидеть в окне
OpenCV
запуск и остановку видеопотока.@pro_python_code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Дайджест полезных материалов из мира : Python за неделю
Почитать:
— Microsoft предлагает БЕСПЛАТНЫЕ онлайн курсы с сертификацией
— Monitoring System (SpyWare) с C2 сервером на базе чат-бота в telegram. Часть 1: Создание бота
— Тестирование производительности на Python: Пошаговое руководство с Flask
— DVC — прекрасный инструмент для DataScience
— Циркуль и линейка. Часть 1
— Кто отвечает за развитие Python
— Архитектура высоконагруженных телеграм-ботов на Python
— Let me teach you the ancient method of Fu Thai! Гнев и ненависть брутфорсеров в 2023 году
— Моделирование биологических явлений с помощью Python
— Визуальное RPG с долговременной памятью, генерируемое из 3 нейросетей и LLamы
— Деревья решений в pySpark: от семечка до параметрической оптимизации случайного леса
— Стайлгайд PySpark: как сделать код элегантным
— Short-circuiting
— Tuple Immutability
— How Does Nerve Regen Formula Work?
— Code Review - The foundation for quality software
— Trying to bridge the gap between WFC “Even Simpler Tiled Model” and Constraint Satisfaction Problem (CSP) propositional rules
— Code review - a unique way of debugging
— Automating Product Descriptions in Odoo with OpenAI's GPT-3 and Python
— Creating Own Chat GPT
— Elastic D&D - Week 4 - Text Note Input
— Scenario-Based Testing with Vedro
Посмотреть:
🌐 Невероятная нейросеть переводит любое видео на другие языки с сохранением оригинального голоса. (⏱ 00:55)
🌐 Python анализ данных с Pandas. PandaSQL (⏱ 12:13)
🌐 Python анализ данных с Pandas. Join, merge, concat в Pandas (⏱ 19:25)
🌐 Python+SQL часть2 создание таблиц. (⏱ 05:15)
🌐 Управление жестами всегда было в ваших часах, просто его нужно было активировать. (⏱ 00:11)
🌐 Уроки Golang с нуля /#28 - Встраивание типов (⏱ 06:16)
🌐 Python анализ данных с Pandas. (⏱ 17:04)
🌐 Уроки Golang с нуля /#27 - Bufio. Чтение и запись (⏱ 10:35)
🌐 Задание 12 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 04:58)
🌐 Задание 13 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 04:05)
🌐 Python для начинающих. Урок 11 | Списки (⏱ 22:42)
🌐 Сколько зарабатывают программисты в Google #shorts (⏱ 00:50)
🌐 Email рассылка с Яндекс почты с помощью Python (⏱ 05:05)
Хорошего дня!
@pro_python_code
Почитать:
— Microsoft предлагает БЕСПЛАТНЫЕ онлайн курсы с сертификацией
— Monitoring System (SpyWare) с C2 сервером на базе чат-бота в telegram. Часть 1: Создание бота
— Тестирование производительности на Python: Пошаговое руководство с Flask
— DVC — прекрасный инструмент для DataScience
— Циркуль и линейка. Часть 1
— Кто отвечает за развитие Python
— Архитектура высоконагруженных телеграм-ботов на Python
— Let me teach you the ancient method of Fu Thai! Гнев и ненависть брутфорсеров в 2023 году
— Моделирование биологических явлений с помощью Python
— Визуальное RPG с долговременной памятью, генерируемое из 3 нейросетей и LLamы
— Деревья решений в pySpark: от семечка до параметрической оптимизации случайного леса
— Стайлгайд PySpark: как сделать код элегантным
— Short-circuiting
— Tuple Immutability
— How Does Nerve Regen Formula Work?
— Code Review - The foundation for quality software
— Trying to bridge the gap between WFC “Even Simpler Tiled Model” and Constraint Satisfaction Problem (CSP) propositional rules
— Code review - a unique way of debugging
— Automating Product Descriptions in Odoo with OpenAI's GPT-3 and Python
— Creating Own Chat GPT
— Elastic D&D - Week 4 - Text Note Input
— Scenario-Based Testing with Vedro
Посмотреть:
🌐 Невероятная нейросеть переводит любое видео на другие языки с сохранением оригинального голоса. (⏱ 00:55)
🌐 Python анализ данных с Pandas. PandaSQL (⏱ 12:13)
🌐 Python анализ данных с Pandas. Join, merge, concat в Pandas (⏱ 19:25)
🌐 Python+SQL часть2 создание таблиц. (⏱ 05:15)
🌐 Управление жестами всегда было в ваших часах, просто его нужно было активировать. (⏱ 00:11)
🌐 Уроки Golang с нуля /#28 - Встраивание типов (⏱ 06:16)
🌐 Python анализ данных с Pandas. (⏱ 17:04)
🌐 Уроки Golang с нуля /#27 - Bufio. Чтение и запись (⏱ 10:35)
🌐 Задание 12 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 04:58)
🌐 Задание 13 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 04:05)
🌐 Python для начинающих. Урок 11 | Списки (⏱ 22:42)
🌐 Сколько зарабатывают программисты в Google #shorts (⏱ 00:50)
🌐 Email рассылка с Яндекс почты с помощью Python (⏱ 05:05)
Хорошего дня!
@pro_python_code
Контейнеризация Python-приложений с помощью Docker – это отличный способ сделать их более переносимыми, масштабируемыми и безопасными. В этой статье мы рассмотрим 7 простых шагов по контейнеризации Python-приложения с помощью Docker
Шаг 1: Установка базового образа
Первым шагом является выбор базового образа для контейнера. Мы рекомендуем использовать минимальный базовый образ, например python:3.11-slim. Это позволит уменьшить размер контейнера и повысить его безопасность.
FROM python:3.11-slim
Шаг 2: Создание непривилегированного пользователя
Официальный образ контейнера Python не содержит предустановленного непривилегированного пользователя. Поэтому нам необходимо его создать. Мы создадим пользователя с UID 1000 и GID 1000.
RUN groupadd -g 1000 python && \
useradd -r -u 1000 -g python python
Шаг 3: Копирование и установка зависимостей
Если ваше приложение имеет какие-либо зависимости, то их необходимо скопировать в контейнер и установить. Это можно сделать с помощью инструкций COPY и RUN.
COPY requirements.txt .
RUN pip install -r requirements.txt
Шаг 4: Настройка рабочего каталога
Далее необходимо создать внутри контейнера каталог, в котором будет храниться исходный код нашего приложения. Мы создадим каталог /app и убедимся, что он принадлежит непривилегированному пользователю, которого мы создали на шаге 2.
RUN mkdir /app && chown python:python /app
WORKDIR /app
Шаг 5: Скопируйте код приложения
Теперь необходимо скопировать исходный код нашего приложения в рабочий каталог.
COPY app.py .
Шаг 6: Запуск от имени непривилегированного пользователя
Нам необходимо убедиться, что процессы, запущенные в нашем контейнере, будут выполняться в непривилегированном режиме.
Это можно сделать с помощью инструкции USER.
USER 1000
Шаг 7: Задание команды входа
Наконец, необходимо указать, какая команда должна быть выполнена при запуске контейнера. Мы хотим выполнить исходный код нашего приложения, поэтому используем инструкцию CMD.
CMD ["python", "app.py"]
После выполнения этих шагов можно собрать образ Docker с помощью следующей команды:
docker build -t my-python-app .
Для запуска контейнера можно воспользоваться следующей командой:
docker run -p 8080:80 my-python-app
Это приведет к запуску контейнера и открытию порта 8080 на хост-машине. Теперь вы можете получить доступ к своему приложению по адресу http://localhost:8080.
Ниже приведен пример Dockerfile для простого Python-приложения:
FROM python:3.11-slim
RUN groupadd -g 1000 python && \
useradd -r -u 1000 -g python python
COPY requirements.txt .
RUN pip install -r requirements.txt
RUN mkdir /app && chown python:python /app
WORKDIR /app
COPY app.py .
USER 1000
CMD ["python", "app.py"]
Для создания образа Docker необходимо выполнить следующую команду:
docker build -t my-python-app .
Для запуска контейнера необходимо выполнить следующую команду:
docker run -p 8080:80 my-python-app
Это приведет к запуску контейнера и открытию порта 8080 на хост-машине. После этого вы сможете получить доступ к своему приложению по адресу http://localhost:8080.
Вот несколько дополнительных советов по контейнеризации Python-приложений:
Please open Telegram to view this post
VIEW IN TELEGRAM
1. Постановка задачи, частные решения и их проблемы
2. Описание алгоритма
Разберём пошагово наш алгоритм.
Шаг 1:
Представим наш график как список словарей по временным отсечкам для каждого дня недели в следующем виде:
[{time: время, flag: цвет флага, start_finish: ‘’}]
Для удобства восприятия покажем только values, но подразумеваем, что keys и фигурные скобки тоже присутствуют. В нашем случае получится следующий результат:
Понедельник:
[{time: 10:00, flag: зелёный, start_finish: ‘’},
{time: 19:00, flag: красный, start_finish: ‘’},
{time: 13:00, flag: красный, start_finish: ‘’},
{time: 14:00, flag: зелёный, start_finish: ‘’}]
И так для каждого дня.
Таким образом, на этом этапе нужно составить словарь, включающий режим работы по дням недели с учетом обеденного перерыва. Мы сознательно не приводим код для этой части работы, поскольку, по сути, это подготовка данных, а не сам алгоритм расчета потерь времени. Эта часть зависит от формата представления исходных данных.
Шаг 2:
Схожим образом представим точки A и B:
[{time: дата + время, flag: ‘’, start_finish: старт/финиш}]
A: {time: 01.03.2023 11:00, flag: ‘’, start_finish: ‘старт’}
B: {time: 02.03.2023 11:00, flag: ‘’, start_finish: ‘финиш’}
Шаг 3:
Определим все дни между точками A и B включительно и подтянем из графика работы по этим дням все флаги, а также сами точки А и В. Данные из нашего примера превратятся в список. Теперь ключевой момент, на котором, собственно, и строится весь алгоритм: отсортируем список по возрастанию даты и времени. Это важно, т.к. позволит нам идти в цикле от отсечки к отсечке, проверяя, нужно ли включать следующий за ней отрезок в расчет.
[{time: 01.03.2023 10:00, flag: ‘зелёный’, start_finish: ‘’}
{time: 01.03.2023 11:00, flag: ‘’, start_finish: ‘старт’}
{time: 01.03.2023 13:00, flag: ‘красный’, start_finish: ‘’}
{time: 01.03.2023 14:00, flag: ‘зелёный’, start_finish: ‘’}
{time: 01.03.2023 19:00, flag: ‘красный’, start_finish: ‘’}
{time: 02.03.2023 10:00, flag: ‘зелёный’, start_finish: ‘’}
{time: 02.03.2023 13:00, flag: ‘красный’, start_finish: ‘’}
{time: 02.03.2023 13:30, flag: ‘’, start_finish: ‘финиш’}]
Код для шагов 2 и 3:
Подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
📹 Устраиваемся на работу. Решаем тестовое задание на позицию Python Junior.
▪Видео
▪Задание
▪ Код из видео
▪Тест
▪ Список реальных тестовых заданий с собеседований.
@pro_python_code
▪Видео
▪Задание
▪ Код из видео
▪Тест
▪ Список реальных тестовых заданий с собеседований.
@pro_python_code
🏃Как ускорить базу данных при помощи шардирования
• Шардирование было одним из первых механизмов, позволяющих распределять базы данных для повышения их производительности. Последние инновации превратили шардирование в один из лучших механизмов в своем роде.
🤔 Для чего требуется шардирование?
• Традиционные базы данных порой не справляются с обработкой растущих объемов данных и нарастающего трафика запросов. Сегодня очень популярны концепции NoSQL и NewSQL – соответственно, на рынке баз данных появляется все больше продуктов, вдохновленных этими новыми концепциями. Но их одних недостаточно, чтобы решить все более серьезные проблемы с данными.
Шардирование – это прием, позволяющий разбивать данные на отдельные строки и столбцы, хранимые на отдельных инстансах серверов базы данных. Так удается распределить нагрузку, оказываемую трафиком. Каждая такая малая таблица называется «шард». Некоторые NoSQL-продукты шардируются, таковы, например, Apache HBase или MongoDB. Шардинговая архитектура встроена в NewSQL-системы.
👀Как шардировать базу данных?
Один из наилучших способов создания шардов таков: данные нужно разделять на множество небольших таблиц. Они также называются «сегментами» (partitions).
Вот две ключевые составляющие шардирования:
▪Шардинговый ключ: конкретное значение в столбце, указывающее, в каком шарде хранится данная строка.
▪Шардинговый алгоритм: алгоритм, согласно которому ваши данные распределяются в одном или нескольких шардах.
Шаг 1: Проанализировать сценарий запроса и распределение данных, чтобы найти шардинговый ключ и шардинговый алгоритм
Шаг 2: Миграция имеющихся данных
Шаг 3: Перебросить трафик на новый кластер
Более детально тут. 👈
@pro_python_code
• Шардирование было одним из первых механизмов, позволяющих распределять базы данных для повышения их производительности. Последние инновации превратили шардирование в один из лучших механизмов в своем роде.
🤔 Для чего требуется шардирование?
• Традиционные базы данных порой не справляются с обработкой растущих объемов данных и нарастающего трафика запросов. Сегодня очень популярны концепции NoSQL и NewSQL – соответственно, на рынке баз данных появляется все больше продуктов, вдохновленных этими новыми концепциями. Но их одних недостаточно, чтобы решить все более серьезные проблемы с данными.
Шардирование – это прием, позволяющий разбивать данные на отдельные строки и столбцы, хранимые на отдельных инстансах серверов базы данных. Так удается распределить нагрузку, оказываемую трафиком. Каждая такая малая таблица называется «шард». Некоторые NoSQL-продукты шардируются, таковы, например, Apache HBase или MongoDB. Шардинговая архитектура встроена в NewSQL-системы.
👀Как шардировать базу данных?
Один из наилучших способов создания шардов таков: данные нужно разделять на множество небольших таблиц. Они также называются «сегментами» (partitions).
Вот две ключевые составляющие шардирования:
▪Шардинговый ключ: конкретное значение в столбце, указывающее, в каком шарде хранится данная строка.
▪Шардинговый алгоритм: алгоритм, согласно которому ваши данные распределяются в одном или нескольких шардах.
Шаг 1: Проанализировать сценарий запроса и распределение данных, чтобы найти шардинговый ключ и шардинговый алгоритм
Шаг 2: Миграция имеющихся данных
Шаг 3: Перебросить трафик на новый кластер
Более детально тут. 👈
@pro_python_code
Данный урок раскроет способы обеспечения безопасности телеграм-бота на Python.
• Видео
@pro_python_code
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Будучи инженером облачных технологий, который увлекается разработкой приложений, я недавно задумался над тем, как превращать локальные прототипы/приложения в ценные инструменты, доступные другим членам организации и особенно полезные в корпоративных средах.
Покажу, как легко можно запустить такие инструменты в облаке!
Зачем это нужно?
Часто бывает так, что талантливый программист или инженер натыкается на полезную библиотеку, фреймворк или инструмент, создает очень эффектную демо-версию, показывает ее своей команде — и на этом все заканчивается. Почему? Это может быть связано с целым рядом факторов, включая:
▪️неопределенность в отношении затрат;
▪️отсутствие идей по запуску инструмента в работу;
▪️неуверенность в учете всех ключевых моментов.
Цель этой статьи — доказать, что выбрать фреймворк, создать с ним приложение и доставить его конечным пользователям можно довольно легко. В данном случае нашим выбором будет Streamlit — популярный фреймворк, помогающий создавать веб-приложения для визуализации данных.
Смысл статьи заключается в том, чтобы предложить отличный способ создания приложений, который недостаточно используется. На самом деле большинство SaaS/PaaS-инструментов, таких как Power BI и Dynamics, подойдут вам в ряде случаев — будь то создание дашбордов, разработка приложения типа CRUD или чего-то еще. Однако если вы хотите использовать действительно крутые приложения (и при этом легко их создавать) и делать их доступными для других людей, читайте дальше!
Что такое Streamlit и почему его стоит использовать?
Лучшее описание этого инструмента дано на сайте Streamlit: это фантастическая библиотека для разработки веб-приложений, предназначенных для взаимодействия с данными.
Лично мне Streamlit нравится по двум причинам.
• Streamlit проще в использовании, чем многие другие инструменты. Это очень простая библиотека по созданию приложений для работы с данными. В нее можно очень легко включать компоненты, созданные в других библиотеках, таких как Seaborn и Altair.
• Streamlit имеет презентабельный вид. Большинство пользователей библиотеки считают, что в ней есть je ne sais quoi (фр. — нечто, невыразимое словами, но моментально покоряющее, убеждающее в качестве). Streamlit легко использовать благодаря высокому качеству доступной документации.
Следует подчеркнуть, что ни один инструмент, библиотека или фреймворк не является панацеей для решения всех проблем. Какую библиотеку выбрать и когда — это отдельный разговор, и мы не будем заострять на нем внимание. То, что будет продемонстрировано здесь, применимо и к другим фреймворкам на других языках.
Как запустить приложение?
Please open Telegram to view this post
VIEW IN TELEGRAM
«Библиотека программиста» запустила два новых канала для Python-разработчиков и тех, кто хочет ими стать👨🏫
В них мы:
🔸тренируемся на практических задачах
🔸отвечаем на популярные вопросы с собеседований
🔸проверяем свои знания
Подписывайтесь:
👉Библиотека собеса по Python — тут мы готовимся к интервью
👉Библиотека задач по Python — тут решаем задачи, проходим тесты и изучаем код
В них мы:
🔸тренируемся на практических задачах
🔸отвечаем на популярные вопросы с собеседований
🔸проверяем свои знания
Подписывайтесь:
👉Библиотека собеса по Python — тут мы готовимся к интервью
👉Библиотека задач по Python — тут решаем задачи, проходим тесты и изучаем код
🔥 Дайджест полезных материалов из мира Python за неделю
Почитать:
— Как сделать вашего телеграм-бота лучше? Конечно, добавить ему аналитику
— Microsoft предлагает БЕСПЛАТНЫЕ онлайн курсы с сертификацией
— 7 шагов по контейнеризации Python-приложений
— MySQL в Google Colab: Бесшовная интеграция
— Сделали по красоте: победители «Конкурса красоты кода»
— Перелом в судьбе змеи: как Python менял версию с 2 на 3
— Как найти популярные NFT коллекции в блокчейне TON — ранжируем коллекции c помощью индексатора dton.io и Python
— Летадло, предисловие
— Python + PIL + Pyrogram = Кастомные эмодзи для Telegram
— S.T.A.R.K. — первый фреймворк для создания голосового ассистента
— Пишем компилятор C в 500 строках Python
— Dragon Userbot — расширение возможностей Вашего Telegram-аккаунта до уровня, ограниченного лишь Вашей фантазией
— Получаем список товаров из чека ИФНС (Raspberry + FreePBX + telegram + sheets)
— Conquer MS-101: Dumpsarena Offers Reliable Study Materials
— How to Easily Try Out boto3 Interactively in AWS CloudShell
— Kafka Ease: Simplifying Kafka Topic and ACL Management
— A Python script to see my most watched YouTube videos
— No One Expects the self._spanish_inquisition (Because it’s protected)
— My Experience learning Python and SQL
— Lovely Silk
— My first contribution to other open source project
— Data Science Essentials: Your Path to Effective Dataframe Joins with Pandas
— Customizing RAG Pipelines to Summarize Latest Hacker News Posts with Haystack 2.0 Preview
Посмотреть:
🌐 Python Matplotlib. Визуализация данных на PRO уровне. (⏱ 24:43)
🌐 Устраиваемся на работу. Решаем тестовое задание на позицию Python Junior. (⏱ 20:28)
🌐 Уроки Golang с нуля /#29 - Дженерики/обобщения (⏱ 10:52)
🌐 Уроки Golang с нуля /#30 - Горутины (⏱ 08:09)
🌐 Революционный генератор музыки на основе искусственного интеллекта (⏱ 00:12)
🌐 Серьезные проблемы с безопасностью в телеграм! (⏱ 00:24)
🌐 Задание 14 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 07:19)
🌐 Задание 16 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 02:09)
🌐 Задание 15 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 03:23)
🌐 Задание 17 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 07:17)
Хорошего дня!
Почитать:
— Как сделать вашего телеграм-бота лучше? Конечно, добавить ему аналитику
— Microsoft предлагает БЕСПЛАТНЫЕ онлайн курсы с сертификацией
— 7 шагов по контейнеризации Python-приложений
— MySQL в Google Colab: Бесшовная интеграция
— Сделали по красоте: победители «Конкурса красоты кода»
— Перелом в судьбе змеи: как Python менял версию с 2 на 3
— Как найти популярные NFT коллекции в блокчейне TON — ранжируем коллекции c помощью индексатора dton.io и Python
— Летадло, предисловие
— Python + PIL + Pyrogram = Кастомные эмодзи для Telegram
— S.T.A.R.K. — первый фреймворк для создания голосового ассистента
— Пишем компилятор C в 500 строках Python
— Dragon Userbot — расширение возможностей Вашего Telegram-аккаунта до уровня, ограниченного лишь Вашей фантазией
— Получаем список товаров из чека ИФНС (Raspberry + FreePBX + telegram + sheets)
— Conquer MS-101: Dumpsarena Offers Reliable Study Materials
— How to Easily Try Out boto3 Interactively in AWS CloudShell
— Kafka Ease: Simplifying Kafka Topic and ACL Management
— A Python script to see my most watched YouTube videos
— No One Expects the self._spanish_inquisition (Because it’s protected)
— My Experience learning Python and SQL
— Lovely Silk
— My first contribution to other open source project
— Data Science Essentials: Your Path to Effective Dataframe Joins with Pandas
— Customizing RAG Pipelines to Summarize Latest Hacker News Posts with Haystack 2.0 Preview
Посмотреть:
🌐 Python Matplotlib. Визуализация данных на PRO уровне. (⏱ 24:43)
🌐 Устраиваемся на работу. Решаем тестовое задание на позицию Python Junior. (⏱ 20:28)
🌐 Уроки Golang с нуля /#29 - Дженерики/обобщения (⏱ 10:52)
🌐 Уроки Golang с нуля /#30 - Горутины (⏱ 08:09)
🌐 Революционный генератор музыки на основе искусственного интеллекта (⏱ 00:12)
🌐 Серьезные проблемы с безопасностью в телеграм! (⏱ 00:24)
🌐 Задание 14 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 07:19)
🌐 Задание 16 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 02:09)
🌐 Задание 15 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 03:23)
🌐 Задание 17 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 07:17)
Хорошего дня!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
https://www.youtube.com/watch?v=hjoh29epXXA
@pro_python_code
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Django создание модели. Вывод даных на страницу
В этом уроке мы поговорим про создание модели в #Django и о выводе даных на страницу.
🔥 Дайджест полезных материалов из мира Python за неделю
Почитать:
— Тестовые серверы Telegram: инструкция по эксплуатации
— Функциональное программирование в Python: ежедневные рецепты
— Откройте свое будущее: Изучите 15 бесплатных курсов IBM прямо сейчас
— Apache Spark и PySpark для аналитика. Учимся читать и понимать план запроса в SparkUI
— Пишем АПИ автотесты на Python по шагам
— Извлечение текста из файлов PDF при помощи Python
— Детекция дефектов дорожного покрытия без размеченных данных: Хакатон, LiDAR, RANSAC, ICP и 44 бесcонных часов
— Преобразование markdown в pdf на Python
— Как «продать» OSS Framework? Propan -> FastStream
— FIFO очередь asyncio в Python
— Тестируем API в Таверне
— Comment ajouter des hyperliens aux documents Word avec Python
— EDA using Data Visualization techniques
— Becoming an AWS All Builders Welcome Grant Alumni Mentor: Empowering the Next Generation of Innovators
— New Features with Git Remotes
— Trabaje con sus datos en tiempo real usando Langchain
— TIL Remote in Git and TOMLLIB in Python
— Exploratory Data Analysis using Data Visualization Techniques.
— My First Pull Request in Hacktoberfest23
— documented: make docstrings in your exceptions work
— MongoDB Quick Start Guide 🍃⚡️
Посмотреть:
🌐 Разбор задачи с собеседования Data Science. Подготовка на практике (⏱ 26:12)
🌐 Cобеседование #Python топовый банк Goldman Sachs Associate на 12000 $ #задача #программирование (⏱ 01:00)
🌐 Django создание модели. Вывод даных на страницу (⏱ 13:01)
🌐 Решаем задачу с leetcode на #Golang (⏱ 00:37)
🌐 Facebook задача с собеседования на #Python на 120000 рублей #программирование #задача #код (⏱ 00:59)
🌐 Разбора задачи с собеседования #Golang (⏱ 00:22)
🌐 Задание 22 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 07:55)
🌐 Задание 23 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 02:50)
Хорошего дня!
@pro_python_code
Почитать:
— Тестовые серверы Telegram: инструкция по эксплуатации
— Функциональное программирование в Python: ежедневные рецепты
— Откройте свое будущее: Изучите 15 бесплатных курсов IBM прямо сейчас
— Apache Spark и PySpark для аналитика. Учимся читать и понимать план запроса в SparkUI
— Пишем АПИ автотесты на Python по шагам
— Извлечение текста из файлов PDF при помощи Python
— Детекция дефектов дорожного покрытия без размеченных данных: Хакатон, LiDAR, RANSAC, ICP и 44 бесcонных часов
— Преобразование markdown в pdf на Python
— Как «продать» OSS Framework? Propan -> FastStream
— FIFO очередь asyncio в Python
— Тестируем API в Таверне
— Comment ajouter des hyperliens aux documents Word avec Python
— EDA using Data Visualization techniques
— Becoming an AWS All Builders Welcome Grant Alumni Mentor: Empowering the Next Generation of Innovators
— New Features with Git Remotes
— Trabaje con sus datos en tiempo real usando Langchain
— TIL Remote in Git and TOMLLIB in Python
— Exploratory Data Analysis using Data Visualization Techniques.
— My First Pull Request in Hacktoberfest23
— documented: make docstrings in your exceptions work
— MongoDB Quick Start Guide 🍃⚡️
Посмотреть:
🌐 Разбор задачи с собеседования Data Science. Подготовка на практике (⏱ 26:12)
🌐 Cобеседование #Python топовый банк Goldman Sachs Associate на 12000 $ #задача #программирование (⏱ 01:00)
🌐 Django создание модели. Вывод даных на страницу (⏱ 13:01)
🌐 Решаем задачу с leetcode на #Golang (⏱ 00:37)
🌐 Facebook задача с собеседования на #Python на 120000 рублей #программирование #задача #код (⏱ 00:59)
🌐 Разбора задачи с собеседования #Golang (⏱ 00:22)
🌐 Задание 22 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 07:55)
🌐 Задание 23 | ЕГЭ по информатике | ДЕМО-2024 (⏱ 02:50)
Хорошего дня!
@pro_python_code
🚀🧠**lru_cache**: отличная техника для эффективного кодинга!🚀🧠
В данном коде
Однако декоратор кэширования не следует использовать в каждом конкретном случае. Для функций, результаты которых меняются даже при одинаковых входных данных, или для функций, выходными данными которых являются изменяемые объекты, кэширования следует избегать.
При первом вызове
Однако при втором вызове `fibonacci(35)` вместо повторного вычисления функция просто найдет значение в кэше и вернет его. В результате время выполнения второго вызова будет значительно меньше, что свидетельствует о пользе кэширования.
Фактическое время выполнения на вашей машине будет зависеть от ее вычислительной мощности, но, скорее всего, вы увидите заметную разницу между двумя вызовами.
Помните, что
@pro_python_code
В данном коде
`lru_cache`
используется в качестве декоратора для функции fibonacci
. Поскольку последовательность Фибоначчи может быть вычислительно затратной для больших входных данных, кэширование результатов для каждого вызова может значительно ускорить последующие вызовы с теми же аргументами.Однако декоратор кэширования не следует использовать в каждом конкретном случае. Для функций, результаты которых меняются даже при одинаковых входных данных, или для функций, выходными данными которых являются изменяемые объекты, кэширования следует избегать.
При первом вызове
`fibonacci(35)`
функция вычислит результат обычным способом, учитывая рекурсивный характер последовательности Фибоначчи. Это может занять много времени.Однако при втором вызове `fibonacci(35)` вместо повторного вычисления функция просто найдет значение в кэше и вернет его. В результате время выполнения второго вызова будет значительно меньше, что свидетельствует о пользе кэширования.
Фактическое время выполнения на вашей машине будет зависеть от ее вычислительной мощности, но, скорее всего, вы увидите заметную разницу между двумя вызовами.
Помните, что
lru_cache
может ускорить только последующие вызовы с теми же параметрами. Если вызвать fibonacci(36)
после fibonacci(35)
, то все равно придется вычислять значение. Однако вычисление будет происходить быстрее, чем без кэша, так как fibonacci(35)
уже закешировано, и ему нужно только добавить к нему fibonacci(34)
.@pro_python_code