Skip to content

Instantly share code, notes, and snippets.

View youmee's full-sized avatar

Alexander Filatov youmee

  • Moscow, Russia
View GitHub Profile
def plural_form(number: int, forms: list[str]) -> str:
"""
Returns correct plural form for Russian Language
:param number: 33
:param forms: ["год", "года", "лет"]
:return: года
"""
if number % 10 == 1 and number % 100 != 11:
return forms[0]
elif 2 <= number % 10 <= 4 and (number % 100 < 10 or number % 100 >= 20):
@youmee
youmee / flatten_list.py
Last active April 14, 2016 17:34
Flatting nested lists using generators
# coding: utf-8
import unittest
def flat_list(input_list):
def flatten(lst):
for i in lst:
if isinstance(i, list):
for j in flatten(i):
yield j
@youmee
youmee / PluralForm.swift
Last active January 16, 2020 14:20
Swift Russian Plural Form Function
/*
pluralForm(28, forms: ["год", "года", "лет"])
output: "лет"
*/
func pluralForm(number: Int, forms: [String]) -> String {
return number % 10 == 1 && number % 100 != 11 ? forms[0] :
(number % 10 >= 2 && number % 10 <= 4 && (number % 100 < 10 || number % 100 >= 20) ? forms[1] : forms[2])
}