Tipo de dato Money
Chema Cortés
py en ch3m4.org
Mar Oct 21 02:31:45 CEST 2003
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
El Lunes, 20 de Octubre de 2003 21:49, Batista, Facundo escribió:
> #- O sea, haría que la precisión fuera un atributo de la clase.
>
> Lo es.
>
> #- Consideraría, además, la posibilidad de aceptar precisiones
> #- "negativas".
> #- Estudia un poco los siguientes ejemplos:
>
> Entiendo, ¿pero para que sirve esto? ¿Usando dinero?
Cuando se trabaja con grandes presupuestos a veces se desea este tipo de
redondeos. Por lo menos en las hojas de cálculo se admiten valores negativos
en la precisión.
> #- En cuanto a las conversiones de tipo, aplicaría la norma de
> #- convertir siempre
> #- hacia el tipo de dato más genérico. Considero que el tipo
> #- 'float' es más
> #- genérico que el 'Money', y no al revés como sugieres.
>
> El principal punto es que si estoy trabajando con Money, yo quiero que ante
>
> la situación:
> >>> m = Money(2)
> >>> n = m + 5
>
> n siga siendo tipo Money.
>
> De esta manera siempre estoy trabajando con este tipo de datos y no tengo
> sorpresas de redondeo en ningún punto. Más allá de la operación matemática,
> siempre es Money. Y creo que no se justifica una sobrecarga de trabajo como
>
> la siguiente:
> >>> m = Money(2)
> >>> n = m + Money(5)
Me refería concretamente a que en la situación 'Money op float' el tipo float
es el tipo más generico. Parece más lógico que fuera Money quien se
convirtiera "implícitamente" a float. En tu propuesta hablas de que, en la
conversión desde float, probablemente se perdería precisión para ajustarse al
otro operando. Creo que sería más consecuente si se obligara a realizar la
conversión "explícitamente" para indicar siempre la precisión de la
conversión.
- --
Chema Cortes (py en ch3m4.org)
http://py.ch3m4.org
PGPKEY: mailto:pgpkey en ch3m4.org?subject=__PGPKEY__
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2-rc1-SuSE (GNU/Linux)
iD8DBQE/lH5xHLTQrABk8H0RAtOUAKCNFGsUBxaO60+swz15++OUU3PdBACgu+Oc
9YWZtrBJVt36hCQUi69SCjo=
=A4fs
-----END PGP SIGNATURE-----
Más información sobre la lista de distribución Python-es