Добавление формулы склонения.

- Добалвение формулы склонения
- Адаптация клонение дней к новой формуле.
This commit is contained in:
Capybara-z
2025-04-03 22:17:19 +03:00
committed by GitHub
parent 5200e25e88
commit a8ce3f65ee
+7 -7
View File
@@ -152,6 +152,12 @@ def format_time_until_deletion(seconds: int) -> str:
return " и ".join(parts) if parts else "менее минуты"
def get_plural_form(num: int, form1: str, form2: str, form3: str) -> str:
n = abs(num) % 100
if 10 < n < 20:
return form3
return {1: form1, 2: form2, 3: form2, 4: form2}.get(n % 10, form3)
def format_days(days: int) -> str:
"""
Форматирует количество дней с правильным склонением.
@@ -164,13 +170,7 @@ def format_days(days: int) -> str:
"""
if days <= 0:
return "0 дней"
if days % 10 == 1 and days % 100 != 11:
return f"{days} день"
elif days % 10 in [2, 3, 4] and days % 100 not in [12, 13, 14]:
return f"{days} дня"
else:
return f"{days} дней"
return f"{days} {get_plural_form(days, 'день', 'дня', 'дней')}"
async def edit_or_send_message(