mirror of
https://github.com/bblaz/num2words.git
synced 2025-12-06 06:42:25 +00:00
Final telugu num2words.
This commit is contained in:
@@ -17,13 +17,13 @@
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from .base import Num2Word_Base
|
||||
from .lang_EU import Num2Word_EU
|
||||
|
||||
|
||||
class Num2Word_KN(Num2Word_Base):
|
||||
class Num2Word_KN(Num2Word_EU):
|
||||
def set_high_numwords(self, high):
|
||||
for n, word in self.high_numwords:
|
||||
self.cards[10 ** n] = word
|
||||
self.cards[10**n] = word
|
||||
|
||||
def setup(self):
|
||||
self.low_numwords = [
|
||||
|
||||
@@ -2,48 +2,116 @@
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from .base import Num2Word_Base
|
||||
from .lang_EU import Num2Word_EU
|
||||
|
||||
|
||||
class Num2Word_TE(Num2Word_Base):
|
||||
class Num2Word_TE(Num2Word_EU):
|
||||
def set_high_numwords(self, high):
|
||||
for n, word in self.high_numwords:
|
||||
self.cards[10 ** n] = word
|
||||
self.cards[10**n] = word
|
||||
|
||||
def setup(self):
|
||||
self.low_numwords = [
|
||||
"తొంభై తొమ్మిది", "తొంభై ఎనిమిది", "తొంభై ఏడు", "తొంభై ఆరు",
|
||||
"తొంభై అయిదు", "తొంభై నాలుగు ", "తొంభై మూడు", "తొంభై రెండు",
|
||||
"తొంభై ఒకటి", "తొంభై ", "ఎనభై తొమ్మిది", "ఎనభై ఎనిమిది",
|
||||
"ఎనభై ఏడు", "ఎనభై ఆరు", "ఎనభై అయిదు", "ఎనభై నాలుగు",
|
||||
"ఎనభై మూడు", "ఎనభై రెండు", "ఎనభై ఒకటి", "ఎనభై",
|
||||
"డెబ్బై తొమ్మిది", "డెబ్బై ఎనిమిది", "డెబ్బై ఏడు",
|
||||
"డెబ్బై ఆరు", "డెబ్బై అయిదు", "డెబ్బై నాలుగు",
|
||||
"డెబ్బై మూడు", "డెబ్బై రెండు",
|
||||
"డెబ్బై ఒకటి", "డెబ్బై", "అరవై తొమ్మిది ", "అరవై ఎనిమిది",
|
||||
"అరవై ఏడు ", "అరవై ఆరు ", "అరవై అయిదు ", "అరవై నాలుగు ",
|
||||
"అరవై మూడు ", "అరవై రెండు ",
|
||||
"అరవై ఒకటి", "అరవై ",
|
||||
"యాభై తొమ్మిది", "యాభై ఎనిమిది",
|
||||
"యాభై ఏడు", "యాభై ఆరు",
|
||||
"యాభై అయిదు", "యాభై నాలుగు",
|
||||
"యాభై మూడు", "యాభై రెండు",
|
||||
"యాభై ఒకటి", "యాభై ",
|
||||
"నలభై తొమ్మిది", "నలభై ఎనిమిది", "నలభై ఏడు",
|
||||
"నలభై ఆరు", "నలభై అయిదు",
|
||||
"నలభై నాలుగు", "నలభై మూడు", "నలభై రెండు",
|
||||
"నలభై ఒకటి", "నలభై", "ముప్పై తొమ్మిది",
|
||||
"ముప్పై ఎనిమిది", "ముప్పై ఏడు", "ముప్పై ఆరు", "ముప్పై ఐదు",
|
||||
"ముప్పై నాలుగు", "ముప్పై మూడు",
|
||||
"ముప్పై రెండు", "ముప్పై ఒకటి", "ముప్పై", "ఇరవై తొమ్మిది",
|
||||
"ఇరవై ఎనిమిది", "ఇరవై ఏడు",
|
||||
"ఇరవై ఆరు", "ఇరవై అయిదు", "ఇరవై నాలుగు",
|
||||
"ఇరవై మూడు", "ఇరవై రెండు", "ఇరవై ఒకటి", "ఇరవై",
|
||||
"పందొమ్మిది", "పధ్ధెనిమిది", "పదిహేడు", "పదహారు",
|
||||
"పదునయిదు", "పధ్నాలుగు",
|
||||
"పదమూడు", "పన్నెండు", "పదకొండు", "పది", "తొమ్మిది",
|
||||
"ఎనిమిది", "ఏడు", "ఆరు", "అయిదు",
|
||||
"నాలుగు", "మూడు", "రెండు", "ఒకటి", "సున్న"
|
||||
"తొంభై తొమ్మిది",
|
||||
"తొంభై ఎనిమిది",
|
||||
"తొంభై ఏడు",
|
||||
"తొంభై ఆరు",
|
||||
"తొంభై అయిదు",
|
||||
"తొంభై నాలుగు",
|
||||
"తొంభై మూడు",
|
||||
"తొంభై రెండు",
|
||||
"తొంభై ఒకటి",
|
||||
"తొంభై",
|
||||
"ఎనభై తొమ్మిది",
|
||||
"ఎనభై ఎనిమిది",
|
||||
"ఎనభై ఏడు",
|
||||
"ఎనభై ఆరు",
|
||||
"ఎనభై అయిదు",
|
||||
"ఎనభై నాలుగు",
|
||||
"ఎనభై మూడు",
|
||||
"ఎనభై రెండు",
|
||||
"ఎనభై ఒకటి",
|
||||
"ఎనభై",
|
||||
"డెబ్బై తొమ్మిది",
|
||||
"డెబ్బై ఎనిమిది",
|
||||
"డెబ్బై ఏడు",
|
||||
"డెబ్బై ఆరు",
|
||||
"డెబ్బై అయిదు",
|
||||
"డెబ్బై నాలుగు",
|
||||
"డెబ్బై మూడు",
|
||||
"డెబ్బై రెండు",
|
||||
"డెబ్బై ఒకటి",
|
||||
"డెబ్బై",
|
||||
"అరవై తొమ్మిది",
|
||||
"అరవై ఎనిమిది",
|
||||
"అరవై ఏడు",
|
||||
"అరవై ఆరు",
|
||||
"అరవై అయిదు",
|
||||
"అరవై నాలుగు",
|
||||
"అరవై మూడు",
|
||||
"అరవై రెండు",
|
||||
"అరవై ఒకటి",
|
||||
"అరవై",
|
||||
"యాభై తొమ్మిది",
|
||||
"యాభై ఎనిమిది",
|
||||
"యాభై ఏడు",
|
||||
"యాభై ఆరు",
|
||||
"యాభై అయిదు",
|
||||
"యాభై నాలుగు",
|
||||
"యాభై మూడు",
|
||||
"యాభై రెండు",
|
||||
"యాభై ఒకటి",
|
||||
"యాభై ",
|
||||
"నలభై తొమ్మిది",
|
||||
"నలభై ఎనిమిది",
|
||||
"నలభై ఏడు",
|
||||
"నలభై ఆరు",
|
||||
"నలభై అయిదు",
|
||||
"నలభై నాలుగు",
|
||||
"నలభై మూడు",
|
||||
"నలభై రెండు",
|
||||
"నలభై ఒకటి",
|
||||
"నలభై",
|
||||
"ముప్పై తొమ్మిది",
|
||||
"ముప్పై ఎనిమిది",
|
||||
"ముప్పై ఏడు",
|
||||
"ముప్పై ఆరు",
|
||||
"ముప్పై ఐదు",
|
||||
"ముప్పై నాలుగు",
|
||||
"ముప్పై మూడు",
|
||||
"ముప్పై రెండు",
|
||||
"ముప్పై ఒకటి",
|
||||
"ముప్పై",
|
||||
"ఇరవై తొమ్మిది",
|
||||
"ఇరవై ఎనిమిది",
|
||||
"ఇరవై ఏడు",
|
||||
"ఇరవై ఆరు",
|
||||
"ఇరవై అయిదు",
|
||||
"ఇరవై నాలుగు",
|
||||
"ఇరవై మూడు",
|
||||
"ఇరవై రెండు",
|
||||
"ఇరవై ఒకటి",
|
||||
"ఇరవై",
|
||||
"పందొమ్మిది",
|
||||
"పధ్ధెనిమిది",
|
||||
"పదిహేడు",
|
||||
"పదహారు",
|
||||
"పదునయిదు",
|
||||
"పధ్నాలుగు",
|
||||
"పదమూడు",
|
||||
"పన్నెండు",
|
||||
"పదకొండు",
|
||||
"పది",
|
||||
"తొమ్మిది",
|
||||
"ఎనిమిది",
|
||||
"ఏడు",
|
||||
"ఆరు",
|
||||
"అయిదు",
|
||||
"నాలుగు",
|
||||
"మూడు",
|
||||
"రెండు",
|
||||
"ఒకటి",
|
||||
"సున్న",
|
||||
]
|
||||
|
||||
self.mid_numwords = [(100, "వందల")]
|
||||
@@ -53,9 +121,23 @@ class Num2Word_TE(Num2Word_Base):
|
||||
self.pointword = "బిందువు "
|
||||
|
||||
self.modifiers = [
|
||||
" ్ ", "ా", " ి ", " ీ ", " ు ", " ూ ", " ృ ",
|
||||
" ౄ ", " ె ", " ే ", " ై ", " ొ", " ో ",
|
||||
" ౌ ", " ఁ ", " ం ", " ః "
|
||||
" ్ ",
|
||||
"ా ",
|
||||
" ి ",
|
||||
" ీ ",
|
||||
" ు ",
|
||||
" ూ ",
|
||||
" ృ ",
|
||||
" ౄ ",
|
||||
" ె ",
|
||||
" ే ",
|
||||
" ై ",
|
||||
" ొ",
|
||||
" ో ",
|
||||
" ౌ ",
|
||||
" ఁ ",
|
||||
" ం ",
|
||||
" ః ",
|
||||
]
|
||||
|
||||
def merge(self, lpair, rpair):
|
||||
@@ -80,5 +162,5 @@ class Num2Word_TE(Num2Word_Base):
|
||||
outwords = self.to_cardinal(value)
|
||||
if outwords[-1] in self.modifiers:
|
||||
outwords = outwords[:-1]
|
||||
ordinal_num = outwords + "వ "
|
||||
ordinal_num = outwords + "వ"
|
||||
return ordinal_num
|
||||
|
||||
@@ -1,4 +1,19 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Copyright (c) 2003, Taro Ogawa. All Rights Reserved.
|
||||
# Copyright (c) 2013, Savoir-faire Linux inc. All Rights Reserved.
|
||||
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
# This library is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||
# MA 02110-1301 USA
|
||||
|
||||
from unittest import TestCase
|
||||
|
||||
@@ -7,49 +22,31 @@ from num2words import num2words
|
||||
|
||||
class Num2WordsTETest(TestCase):
|
||||
def test_numbers(self):
|
||||
self.assertEqual(num2words(42, lang="te"), u"నలభై రెండు")
|
||||
self.assertEqual(num2words(893, lang="te"), u"ఎనిమిది వందల తొంబై మూడు")
|
||||
self.assertEqual(
|
||||
num2words(1729, lang="te"), u"ఒక వేయి ఏడు వందల ఇరవై తొమ్మిది ")
|
||||
self.assertEqual(num2words(123, lang="te"), u"ఒక వంద ఇరవై మూడు")
|
||||
self.assertEqual(num2words(32211, lang="te"),
|
||||
u"ముప్పై రెండు వేల రెండు వందల పదకొండు")
|
||||
self.assertEqual(num2words(66, lang="te"), u"అరవై ఆరు")
|
||||
self.assertEqual(num2words(1734, lang="te"),
|
||||
u"ఒకటి వేల ఏడు వందల ముప్పై నాలుగు")
|
||||
self.assertEqual(num2words(134, lang="te"),
|
||||
u"ఒకటి వందల ముప్పై నాలుగు")
|
||||
self.assertEqual(num2words(54411, lang="te"),
|
||||
u"యాభై నాలుగు వేల నాలుగు వందల పదకొండు")
|
||||
|
||||
def test_cardinal_for_float_number(self):
|
||||
self.assertEqual(
|
||||
num2words(3.14, lang="te"),
|
||||
u"మూడుబిందువు ఒకటి నాలుగు"
|
||||
)
|
||||
self.assertEqual(num2words(1.61803, lang="te"),
|
||||
u"ఒకటి బిందువు ఆరు ఒకటి ఎనిమిది సున్నా మూడు ")
|
||||
u"ఒకటి బిందువు ఆరు ఒకటి ఎనిమిది సున్న మూడు")
|
||||
|
||||
def test_ordinal(self):
|
||||
self.assertEqual(
|
||||
num2words(1, lang='te', to='ordinal'),
|
||||
u'ఒకటివ '
|
||||
)
|
||||
self.assertEqual(
|
||||
num2words(22, lang='te', to='ordinal'),
|
||||
u'ఇరవై రెండవ '
|
||||
)
|
||||
self.assertEqual(
|
||||
num2words(12, lang='te', to='ordinal'),
|
||||
u'పన్నెండవ'
|
||||
)
|
||||
self.assertEqual(
|
||||
num2words(130, lang='te', to='ordinal'),
|
||||
u'ఒక వంద ముప్పయ్యవ '
|
||||
)
|
||||
self.assertEqual(
|
||||
num2words(1003, lang='te', to='ordinal'),
|
||||
u'ఒక వెయ్యి మూడవ'
|
||||
)
|
||||
self.assertEqual(num2words(1, lang='te', to='ordinal'), u"ఒకటివ")
|
||||
self.assertEqual(num2words(23, lang='te', to='ordinal'),
|
||||
u"ఇరవై మూడువ")
|
||||
self.assertEqual(num2words(12, lang='te', to='ordinal'), u"పన్నెండువ")
|
||||
self.assertEqual(num2words(130, lang='te', to='ordinal'),
|
||||
u"ఒకటి వందల ముప్పైవ")
|
||||
self.assertEqual(num2words(1003, lang='te', to='ordinal'),
|
||||
u"ఒకటి వేల మూడువ")
|
||||
|
||||
def test_ordinal_num(self):
|
||||
self.assertEqual(
|
||||
num2words(2, lang="te", ordinal=True), u"రెండవ")
|
||||
self.assertEqual(num2words(5, lang="te", ordinal=True), u"అయిదవ ")
|
||||
self.assertEqual(
|
||||
num2words(16, lang="te", ordinal=True), u"పదహారవ ")
|
||||
self.assertEqual(
|
||||
num2words(113, lang="te", ordinal=True), u"ఒక వంద పదమూడవ")
|
||||
self.assertEqual(num2words(3, lang="te", ordinal=True), u"మూడువ")
|
||||
self.assertEqual(num2words(5, lang="te", ordinal=True), u"అయిదువ")
|
||||
self.assertEqual(num2words(16, lang="te", ordinal=True), u"పదహారువ")
|
||||
self.assertEqual(num2words(113, lang="te", ordinal=True),
|
||||
u"ఒకటి వందల పదమూడువ")
|
||||
|
||||
Reference in New Issue
Block a user