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

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

Канал на бирже : https://telega.in/c/PythonTechCode
Download Telegram
📅 Работаем с месяцами, а не днями

Как прибавить к дате месяц? Обычная timedelta(days=30) не подходит: в разных месяцах разное количество дней.
А если нужно прибавить именно календарный месяц?

dateutil решает эту задачу с помощью relativedelta.
from datetime import date
from dateutil.relativedelta import relativedelta

next_month = date.today() + relativedelta(months=1)

print(next_month)


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

Установка:
pip install python-dateutil


❓ Когда это пригодится? При расчёте сроков подписок, дат платежей, дедлайнов и напоминаний.

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

✅ Мы в Max – подписывайся
👍3
🌐 Проверяем скорость интернета через Python

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

Для этого есть библиотека internetspeedtest.

Устанавливаем:
pip install internetspeedtest


Минимальный пример:
from internetspeedtest import InternetSpeedTest


def check_speed():
speedtest = InternetSpeedTest()

speedtest.get_best_server()

download = speedtest.download()
upload = speedtest.upload()

print(f"Download: {download:.2f} Mbps")
print(f"Upload: {upload:.2f} Mbps")


check_speed()


Запускаем скрипт и получаем примерно:
Download: 94.52 Mbps
Upload: 48.71 Mbps


💡 Удобно, если нужно добавить проверку скорости интернета непосредственно в Python-скрипт или автоматизацию.

✅ Мы в Max – подписывайся
🔥2
🐍 Python словарь вместо switch

Нужно сопоставить команду с действием? Необязательно писать длинную цепочку if/elif. В простых случаях поможет обычный словарь.

tasks = {
"Monday": "Проверить почту",
"Tuesday": "Написать тесты",
"Wednesday": "Исправить ошибки",
}

day = "Tuesday"
task = tasks.get(day, "Неизвестная команда")

print(task)


Как это работает?
• Ключ словаря определяет вариант.
• Значение хранит результат для этого варианта.
• Метод .get() возвращает значение по ключу, а если ключа нет, использует значение по умолчанию.
В примере Tuesday вернёт Написать тесты, а неизвестный день приведёт к сообщению Неизвестная команда.


⚡ Когда это полезно?
Когда есть несколько фиксированных вариантов, такой подход делает код компактнее и упрощает добавление новых команд.

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