#!/usr/bin/env python
# -*- coding: utf-8 -*-

from pytils import numeral

# choose_plural нужен для выбора правильной формы
# существительного

# у choose_plural два параметра:
# 1) amount, количество
# 2) variants, варианты
# варианты - это кортеж из вариантов склонения
# его легко составить по мнемоническому правилу:
# (один, два, пять)
# т.е. для 1, 2 и 5 объектов, например для слова "пример"
# (пример, примера, примеров)
print(numeral.choose_plural(21, ("пример", "примера", "примеров")))
#-> пример
print(numeral.choose_plural(12, ("пример", "примера", "примеров")))
#-> примеров
print(numeral.choose_plural(32, ("пример", "примера", "примеров")))
#-> примера

# также можно задавать варианты в одну строку, разделенные запятой
print(numeral.choose_plural(32, "пример,примера, примеров"))
#-> примера

# если в варианте используется запятая, она экранируется слешем
print(numeral.choose_plural(35, "гвоздь, гвоздя, гвоздей\, шпунтов"))
#-> гвоздей, шпунтов

# зачастую требуется не просто вариант, а вместе с числительным
# в этом случае следует использовать get_plural
print(numeral.get_plural(32, "пример,примера, примеров"))
#-> 32 примера

# часто хочется, чтобы в случае отсутсвия значения (т.е. количество равно нулю)
# выводилось не "0 примеров", а "примеров нет"
# в этом случае используйте третий параметр get_plural:
print(numeral.get_plural(0, "пример,примера, примеров", "без примеров"))
# -> без примеров