20 from collections
import OrderedDict
23 _ARTICLES = {
'el',
'la',
'los',
'las'}
58 _FRACTION_STRING_ES = {
81 _LONG_SCALE_ES = OrderedDict([
96 (1e72,
"duodecillón"),
97 (1e78,
"tredecillón"),
98 (1e84,
"cuatrodecillón"),
99 (1e90,
"quindecillón"),
100 (1e96,
"sexdecillón"),
101 (1e102,
"septendecillón"),
102 (1e108,
"octodecillón"),
103 (1e114,
"novendecillón"),
104 (1e120,
"vigintillón"),
105 (1e306,
"unquinquagintillón"),
106 (1e312,
"duoquinquagintillón"),
107 (1e336,
"sexquinquagintillón"),
108 (1e366,
"unsexagintillón")
112 _SHORT_SCALE_ES = OrderedDict([
118 (1e15,
"cuatrillón"),
119 (1e18,
"quintillón"),
125 (1e36,
"undecillón"),
126 (1e39,
"duodecillón"),
127 (1e42,
"tredecillón"),
128 (1e45,
"cuatrodecillón"),
129 (1e48,
"quindecillón"),
130 (1e51,
"sexdecillón"),
131 (1e54,
"septendecillón"),
132 (1e57,
"octodecillón"),
133 (1e60,
"novendecillón"),
134 (1e63,
"vigintillón"),
135 (1e66,
"unvigintillón"),
136 (1e69,
"uuovigintillón"),
137 (1e72,
"tresvigintillón"),
138 (1e75,
"quattuorvigintillón"),
139 (1e78,
"quinquavigintillón"),
140 (1e81,
"qesvigintillón"),
141 (1e84,
"septemvigintillón"),
142 (1e87,
"octovigintillón"),
143 (1e90,
"novemvigintillón"),
144 (1e93,
"trigintillón"),
145 (1e96,
"untrigintillón"),
146 (1e99,
"duotrigintillón"),
147 (1e102,
"trestrigintillón"),
148 (1e105,
"quattuortrigintillón"),
149 (1e108,
"quinquatrigintillón"),
150 (1e111,
"sestrigintillón"),
151 (1e114,
"septentrigintillón"),
152 (1e117,
"octotrigintillón"),
153 (1e120,
"noventrigintillón"),
154 (1e123,
"quadragintillón"),
155 (1e153,
"quinquagintillón"),
156 (1e183,
"sexagintillón"),
157 (1e213,
"septuagintillón"),
158 (1e243,
"octogintillón"),
159 (1e273,
"nonagintillón"),
160 (1e303,
"centillón"),
161 (1e306,
"uncentillón"),
162 (1e309,
"duocentillón"),
163 (1e312,
"trescentillón"),
164 (1e333,
"decicentillón"),
165 (1e336,
"undecicentillón"),
166 (1e363,
"viginticentillón"),
167 (1e366,
"unviginticentillón"),
168 (1e393,
"trigintacentillón"),
169 (1e423,
"quadragintacentillón"),
170 (1e453,
"quinquagintacentillón"),
171 (1e483,
"sexagintacentillón"),
172 (1e513,
"septuagintacentillón"),
173 (1e543,
"ctogintacentillón"),
174 (1e573,
"nonagintacentillón"),
175 (1e603,
"ducentillón"),
176 (1e903,
"trecentillón"),
177 (1e1203,
"quadringentillón"),
178 (1e1503,
"quingentillón"),
179 (1e1803,
"sexcentillón"),
180 (1e2103,
"septingentillón"),
181 (1e2403,
"octingentillón"),
182 (1e2703,
"nongentillón"),
183 (1e3003,
"millinillón")
187 _ORDINAL_STRING_BASE_ES = {
220 _SHORT_ORDINAL_STRING_ES = {
222 1e9:
"milmillonésimo",
224 1e15:
"milbillonésimo",
225 1e18:
"trillonésimo",
226 1e21:
"miltrillonésimo",
227 1e24:
"cuatrillonésimo",
228 1e27:
"milcuatrillonésimo",
229 1e30:
"quintillonésimo",
230 1e33:
"milquintillonésimo" 233 _SHORT_ORDINAL_STRING_ES.update(_ORDINAL_STRING_BASE_ES)
236 _LONG_ORDINAL_STRING_ES = {
239 1e18:
"trillonésimo",
240 1e24:
"cuatrillonésimo",
241 1e30:
"quintillonésimo",
242 1e36:
"sextillonésimo",
243 1e42:
"septillonésimo",
244 1e48:
"octillonésimo",
245 1e54:
"nonillonésimo",
246 1e60:
"decillonésimo" 249 _LONG_ORDINAL_STRING_ES.update(_ORDINAL_STRING_BASE_ES)