[Python-es] Locate es_ES

PeRy perysoy en gmail.com
Jue Ago 20 11:09:16 EDT 2020


Hola compañero, yo lo hago de la siguiente manera:

In [1]: import locale

In [2]: a = 25400.57

In [3]: a
Out[3]: 25400.57

In [4]: locale.setlocale(locale.LC_ALL, 'es')
Out[4]: 'es'

In [5]: print(f'{a:n}')
25.400,6

'n'

Number. This is the same as 'd', except that it uses the current locale
setting to insert the appropriate number separator characters.
https://docs.python.org/3/library/string.html#format-specification-mini-language

espero que te sirva

un saludo

El jue., 20 ago. 2020 a las 14:00, Javier Perez (<javierperez en perasalvino.es>)
escribió:

> Hola a todos, buenos días,
>
>
> En la aplicación que estoy desarrollando extraigo una serie de datos de
> una web que es americana. Me gustaría pasar esos datos a formato español.
> Vamos, cambiar el punto decimal por una coma.
>
> No es por el origen de los datos porque he creado una variable con
> decimales y me la muestra mal.
>
> ¿qué estoy haciendo mal?
>
>
>
> El programa es este:
> import pprint
> from gazpacho import get, Soup
> import locale
> locale.setlocale(locale.LC_ALL, 'es_ES')
>
> valor = 0
> url = "https://markets.ft.com/data/funds/tearsheet/risk?s=LU0275692696:EUR
> "
> html = get(url)
> gazpacho_soup = Soup(html)
> valor = gazpacho_soup.find(
>     'span', attrs={'class': 'mod-ui-data-list__value'})[0].text
> valor = valor.replace(",", "")
> valor = float(valor)
> valor = valor * 1000
> anual = gazpacho_soup.find(
>     'span', attrs={'class': 'mod-ui-data-list__value'})[2].text
> anual = anual.replace("%", "")
> anual = float(anual)
> moneda = 15268.57
> alpha = gazpacho_soup.find('td')[1].text
> alpha = float(alpha)
> beta = gazpacho_soup.find('td')[4].text
> beta = float(beta)
>
>
> print(valor)
> print(anual)
> print(alpha)
> print(moneda)
> print(beta)
>
> configuracion = locale.localeconv()
>
> # Imprimir definiciones con pprint para una lectura agradable:
> imprimir = pprint.PrettyPrinter()
> imprimir.pprint(configuracion)
>
>
>
> Y lo que genera es:
> 25910.0
> 4.18
> -18.87
> 15268.57
> 0.94
> {'currency_symbol': 'Eu',
>  'decimal_point': ',',
>  'frac_digits': 2,
>  'grouping': [127],
>  'int_curr_symbol': 'EUR ',
>  'int_frac_digits': 2,
>  'mon_decimal_point': ',',
>  'mon_grouping': [3, 3, 0],
>  'mon_thousands_sep': '.',
>  'n_cs_precedes': 0,
>  'n_sep_by_space': 1,
>  'n_sign_posn': 1,
>  'negative_sign': '-',
>  'p_cs_precedes': 0,
>  'p_sep_by_space': 1,
>  'p_sign_posn': 1,
>  'positive_sign': '',
>  'thousands_sep': ''}
>
> Saludos,
>
> --
> Javier Pérez
> http://es.linkedin.com/in/javierperez1
> http://www.perasalvino.es/
>
>
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> https://mail.python.org/mailman/listinfo/python-es
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20200820/62be2f2d/attachment.html>


Más información sobre la lista de distribución Python-es