andrey_vetrov

number_to_words

Nov 4th, 2022 (edited)
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. def number_to_words(n):
  2. x = {1: 'один', 2: 'два', 3: 'три', 4: 'четыре', 5: 'пять',
  3. 6: 'шесть', 7: 'семь', 8: 'восемь', 9: 'девять'}
  4. y = {10: 'десять', 20: 'двадцать', 30: 'тридцать', 40: 'сорок',
  5. 50: 'пятьдесят', 60: 'шестьдесят', 70: 'семьдесят',
  6. 80: 'восемьдесят', 90: 'девяносто'}
  7. z = {11: 'одиннадцать', 12: 'двенадцать', 13: 'тринадцать',
  8. 14: 'четырнадцать', 15: 'пятнадцать', 16: 'шестнадцать',
  9. 17: 'семнадцать', 18: 'восемнадцать', 19: 'девятнадцать'}
  10. n1 = n % 10
  11. n2 = n - n1
  12. if n < 10:
  13. return x.get(n)
  14. elif 10 < n < 20:
  15. return z.get(n)
  16. elif n >= 10 and n in y:
  17. return y.get(n)
  18. else:
  19. return y.get(n2) + ' ' + x.get(n1)
Advertisement
Add Comment
Please, Sign In to add comment