Pro Python • IT
4.13K subscribers
1.32K photos
140 videos
38 files
1.27K links
Pro Python — авторский канал с полезными советами, материалами и новостями по Python-программированию.

Сотрудничество (реклама): @NotPriceMedia

Канал на бирже : https://telega.in/c/PythonTechCode
Download Telegram
💻 SQL vs NoSQL: краткий гид

🔹SQL (Реляционные БД)
Жёсткая структура: Таблицы с фиксированными столбцами
Для: Финансовых операций, интернет-магазинов
Примеры: MySQL, PostgreSQL
Плюсы: Надёжность, транзакции, сложные запросы


🔸NoSQL (Нереляционные БД)
Гибкая структура
: Данные без строгой схемы
Для
: Соцсетей, big data, IoT
Примеры
: MongoDB, Cassandra
Плюсы
: Масштабируемость, скорость работы с большими данными


Выбор зависит от задачи:
🔹SQL — если нужна целостность данных (банки, бухгалтерия)
🔸NoSQL — для быстрой обработки логов или контента (соцсети, аналитика)

🔹 SQL = порядок и точность
🔸 NoSQL = скорость и гибкость

📲 Канал Python в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥62👍1
🤣 Найди себя и улыбнись

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31
⌨️ Преобразуем числа в символы

Функция chr() — это инструмент в Python, который позволяет преобразовывать числовые Unicode-коды в соответствующие символы.

Некоторые из этих символов могут быть не отображаемыми или непечатаемыми.


Функция принимает целое число (от 0 до 1,114,111) и возвращает соответствующий Unicode-символ.

Если передано число вне этого диапазона, будет сгенерировано исключение ValueError.

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
⌨️ Ключевые аспекты хорошего программирования: использование «безопасных» методов

Использование метода get для доступа к элементам словаря — это хорошая практика, так как это позволяет избежать ошибки KeyError, если ключа не существует.


📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
⌨️ Отслеживание выполнения кода

Библиотека Pysnooper предлагает простой и эффективный способ отслеживания выполнения кода, что может значительно упростить процесс отладки.

Она работает за счёт добавления специального декоратора, который фиксирует информацию о переменных, их значениях и каждом шаге выполнения кода.

Установка библиотеки:
pip install pysnooper


Pysnooper также позволяет указать файл для сохранения логов или исключить запись некоторых переменных. Например, чтобы сохранить логи выполнения в файл logfile.log, используйте следующую конструкцию:
@pysnooper.snoop('logfile.log')


📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
😒 И не забывайте про отступы

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7😁1
⌨️ Сырые строки в Python: их назначение и использование

Сырые строки — это строки, в которых последовательности (начинающиеся с обратного слеша \) не интерпретируются.

Они существуют для удобства и читаемости кода, когда обратный слеш нужен как обычный символ.

В каких случаях стоит использовать сырые строки?
🟡Когда вы указываете пути к файлам в Windows (например, r"C:\Users\...")

🟢При использовании регулярных выражений (например, re.compile(r"\d+"))

🟣Когда создаете шаблоны, содержащие обратные слеши.


Сырая строка не может заканчиваться на нечетное количество обратных слешей.

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2
🤓 Команды Git

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
⌨️ Как работает Python под капотом

🔵Исходный код: Пишется в файлах .py.
🔸Интерпретатор: Считывает и выполняет код.
▫️Преобразование в байт-код: Компилируется в промежуточный байт-код (.pyc).
🔵Исполнение: Байт-код выполняется виртуальной машиной Python (PVM).
🔸Управление памятью: Автоматическое управление памятью и сборка мусора.
▫️Модули и библиотеки: Поддержка модульности и переиспользования кода.

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2
🎯 Основные способы вывода текста в трёх популярных языках программирования

Python предлагает самый простой и интуитивно понятный синтаксис для вывода данных с помощью функции print(), не требующей дополнительных библиотек или сложных конструкций.


📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5🔥1👀1
📖 7 обязательных стратегий масштабирования вашей базы данных

1 - Индексация:
Проверьте шаблоны запросов вашего приложения и создайте правильные индексы.

2 - Материализованные представления:
Предварительно вычисляйте результаты сложных запросов и сохраняйте их для более быстрого доступа.

3 - Денормализация:
Сократите количество сложных соединений для повышения производительности запросов.

4 - Вертикальное масштабирование
Увеличьте производительность сервера базы данных, добавив больше ЦП, оперативной памяти или хранилища.

5 - Кэширование

Храните часто используемые данные на более быстром уровне хранения, чтобы снизить нагрузку на базу данных.

6 - Репликация
Создавайте копии вашей первичной базы данных на разных серверах для масштабирования операций чтения.

7 - Шардинг
Разделите таблицы базы данных на более мелкие части и распределите их по серверам. Используется для масштабирования как записей, так и чтений.

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
// TODO: Понять, почему это работает. И почему это не должно работать, но работает. Страшно.

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
😁9
⌨️ Как превратить PDF в аудиофайл

Нужно установить две библиотеки:

🟡pdfplumber — вытаскивает текст из PDF.
pip install pdfplumber


🟡gTTS — преобразует текст в речь.
pip install gTTS


Скрипт берёт текст из PDF и сохраняет его как MP3-файл.

📲 Еще больше полезных скриптов в нашем Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53🔥1
⌨️ Методы списков Python

Комбинация этих методов позволяет эффективно работать со списками и упрощает решение задач, связанных с обработкой данных в Python.


📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
🤜 SQL против Python

🔴SQL отлично подходит для управления и выполнения запросов в структурированных базах данных.
Он отлично справляется с такими задачами, как фильтрация, сортировка и агрегация данных.


🔵С другой стороны, Python — это многоцелевой язык программирования, который используется для широкого спектра задач, включая веб-разработку, автоматизацию, анализ данных, научные вычисления и машинное обучение.
Он предлагает библиотеки, такие как Pandas для обработки данных, NumPy для числовых операций и Scikit-Learn для машинного обучения.


✴️Подводя итог, можно сказать, что SQL необходим для эффективного выполнения запросов к базе данных, в то время как Python обеспечивает более комплексное решение для различных задач, связанных с данными, что позволяет часто использовать их вместе в рабочих процессах, связанных с данными.

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
3
👀 Кто лишний?

В отличие от языков программирования, HTML не содержит конструкций для управления потоком выполнения, таких как циклы, условные операторы, функции или переменные.

Его основная функция — описать структуру и содержимое веб-страницы с помощью тегов и атрибутов.


📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
⌨️ Исходный код для восстановления забытых паролей от Wi-Fi

# Импорт модуля для выполнения системных команд
import subprocess

# Получаем метаданные о Wi-Fi профилях с помощью команды netsh
meta_data = subprocess.check_output(['netsh', 'wlan', 'show', 'profiles'])

# Декодируем полученные данные из байтов в строку UTF-8, заменяя ошибки символами \
data = meta_data.decode('utf-8', errors="backslashreplace")

# Разделяем данные по строкам
data = data.split('\n')

# Создаем список для хранения имен Wi-Fi профилей
profiles = []

# Перебираем каждую строку в данных
for line in data:
# Ищем строки, содержащие "All User Profile" (имена Wi-Fi сетей)
if "All User Profile" in line:
# Разделяем строку по двоеточию
parts = line.split(":")
# Берем вторую часть (имя профиля)
profile_name = parts[1]
# Удаляем лишние пробелы и кавычки вокруг имени
profile_name = profile_name.strip()[1:-1]
# Добавляем имя профиля в список
profiles.append(profile_name)

# Выводим заголовок таблицы
print("{:<30}| {:<}".format("Имя Wi-Fi", "Пароль"))
print("----------------------------------------------")

# Перебираем все найденные профили Wi-Fi
for profile in profiles:
try:
# Пытаемся получить информацию о профиле, включая пароль
results = subprocess.check_output(['netsh', 'wlan', 'show', 'profile', profile, 'key=clear'])
# Декодируем и разделяем результат по строкам
results = results.decode('utf-8', errors="backslashreplace")
results = results.split('\n')

# Ищем строку с содержимым ключа (паролем)
password_lines = [line.split(":")[1].strip()[1:-1] for line in results if "Key Content" in line]

# Если пароль найден, выводим его
try:
print("{:<30}| {:<}".format(profile, password_lines[0]))
# Если пароль не найден, выводим пустое поле
except IndexError:
print("{:<30}| {:<}".format(profile, ""))

# Обрабатываем ошибку, если команда не выполнилась
except subprocess.CalledProcessError:
print("{:<30}| {:<}".format(profile, "Ошибка получения данных"))


Важные нюансы:
✔️Работает только в Windows (использует netsh — встроенную утилиту).
✔️Требует прав администратора для доступа к паролям.
✔️Пароли показываются только для текущего пользователя (если они не защищены дополнительно).
✔️Если пароль не сохранён (например, вводился вручную), он не будет извлечён.

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍41
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10
⌨️ Преобразуйте PDF, Word и Excel в Markdown

MarkItDown — это инструмент для преобразования файлов в формат Markdown. Он поддерживает самые разные типы документов: от офисных форматов вроде PDF, Word и Excel до изображений, аудио и даже HTML-страниц.

Библиотека умеет извлекать текст, метаданные, а при необходимости использует распознавание речи или OCR.

Установка библиотеки:
pip install markitdown


⚙️ Документация

Такой подход очень удобен, когда нужно подготовить содержимое файлов для дальнейшего анализа или обработки.

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
⌨️ Разминка мозга

Ох уж эти циклы. 🤯


📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🤣 Анекдот дня

— Ты почему всё время на Python пишешь?
— Ну, мне сказали: «Тебе стоит попробовать Python, бро».
— И что?
— А я попробовал… Теперь tuple не изменить, list не остановить, а от indentation error спасает только кофе!

(Намек на неизменяемость tuple, гибкость list и вечные проблемы с отступами в Python.)

📲 Мы в Max – подписывайся
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2😁2