Pro Python • IT
4.16K subscribers
1.41K photos
145 videos
42 files
1.37K links
Pro Python — авторский канал с полезными советами, материалами и новостями по Python-программированию.

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

Канал на бирже : https://telega.in/c/PythonTechCode
Download Telegram
🔸Как быстро работает ваш Python-код?

Для оценки производительности не стоит использовать time.time(). На результат могут влиять фоновые процессы и нагрузка на систему.

Используйте timeit — стандартный модуль Python для точного измерения времени выполнения небольших фрагментов кода.

Например:
from timeit import timeit

print(timeit("sum(range(1000))", number=10000))


💡Если сравниваете несколько решений, ориентируйтесь на минимальное время выполнения — именно его рекомендует использовать официальная документация timeit.

 Мы в Max – подписывайся
🔥3
🔴 Не используйте random для паролей и токенов

Если нужно сгенерировать пароль, API-токен или секретный ключ, выбирайте модуль secrets.

Самые полезные функции:
• secrets.choice() — случайный элемент из последовательности.
• secrets.randbelow() — случайное число в заданном диапазоне.
• secrets.token_hex(), token_bytes() и token_urlsafe() — генерация безопасных токенов в разных форматах.
• secrets.compare_digest() — безопасное сравнение строк без риска атак по времени выполнения.

Например:
import secrets
token = secrets.token_urlsafe(32)
print(token)


💡 В отличие от random, он использует криптографически стойкий генератор случайных чисел, поэтому его результаты значительно сложнее предсказать.

 Мы в Max – подписывайся
👍4
📣 Ошибки новичка стоят дорого

Именно поэтому хороший разработчик получает деньги не только за написанный код, но и за проблемы, которых он сумел избежать.


 Мы в Max – подписывайся
2
🔹Кто подключился к вашему Wi-Fi?

Python позволяет быстро посмотреть устройства, которые есть в вашей локальной сети.

Для этого достаточно выполнить команду arp -a через модуль subprocess и вывести записи из ARP-кэша.

import subprocess
print(subprocess.check_output("arp -a", shell=True).decode())


✔️ Это не полный список всех устройств в сети, а содержимое ARP-кэша, но его часто достаточно, чтобы заметить неизвестные подключения.

 Мы в Max – подписывайся
👍3
🫥 Эволюция подхода к проверке на нечётность

 Мы в Max – подписывайся
😁1
🔸Автоперевод текста из буфера обмена

Скопировали текст — Python сразу перевел его. Для этого достаточно отслеживать буфер обмена через pyperclip и отправлять текст в переводчик с помощью googletrans.

import pyperclip

from googletrans import Translator

translator = Translator()

text = pyperclip.paste()

print(translator.translate(text, dest="ru").text)


💡 Полезно, если часто работаете с сообщениями, документацией или статьями на иностранных языках.

 Мы в Max – подписывайся
👍1
👁️‍🗨️ Настройка окружения

 Мы в Max – подписывайся
😁2
🔴 Вредоносный Python-код может выглядеть как обычный скрипт и оставаться незамеченным до запуска

Hexora — инструмент для анализа Python-кода, который выявляет потенциально опасные паттерны до выполнения.

Он использует статический анализ на основе правил и ML-модель, а также проверяет зависимости на признаки атак цепочки поставок.

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


💻 GitHub

🔻 Поддерживается анализ скриптов из сети и новых пакетов PyPI.

 Мы в Max – подписывайся
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
👀 Наглядно показываем принцип работы и область применения восьми самых популярных сетевых протоколов

 Мы в Max – подписывайся
🔥2
🌐 Преобразуем сложный код в простые цепочки

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

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

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


💡Используйте оператор «|» для объединения функций в цепочку.

 Мы в Max – подписывайся
👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
⭐️ Разница между списком и кортежем в Python

▪️ Список — изменяемый (можно менять элементы), записывается в [ ]

▪️ Кортеж — неизменяемый (нельзя изменить), записывается в ( )

▫️ Преобразование списка в кортеж:
list1 = [1, 2, 3]  
print(tuple(list1)) # Вывод: (1, 2, 3)


▫️Кортеж из одного элемента:
list1 = [1]  
print(tuple(list1)) # Вывод: (1,)


⚠️ Важно: Кортеж определяется запятой, а не скобками!

 Мы в Max – подписывайся
🔥1
Новые модели и инструменты появляются быстрее, чем успеваешь разобраться в предыдущих. В итоге подписок десятки, а в работе используются две нейросети.

Поэтому мы собрали сильных экспертов по ИИ в одну папку: инструменты, кейсы, промпты и практика.

💬Добавляйте каналы💬
🔹Нелегка работа брата

 Мы в Max – подписывайся
😁1
⌨️ Большая подборка тестовых заданий для IT

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

Особенно здорово раздел по Python — можно и к собесу подготовиться, и просто порешать для себя.

🌐 Ссылка

Всё на русском, много практики.

 Мы в Max – подписывайся
🔥1