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 (<javierpe...@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@python.org > https://mail.python.org/mailman/listinfo/python-es >
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es