Top.Mail.Ru
Ответы

Python тип float не выводит 15 знаков

Python тип float не выводит 15 знаков

1234567891011
 dict_temp = {'key1': ['0.0000016202', '80873']} 
dic = {} 
 
for key in dict_temp: 
    temp = [] 
    for i in range(2): 
        temp.append(float(dict_temp[key][i])) 
    dic[key] = temp 
 
print(dic) 
 

выводит
{'key1': [1.6202e-06, 80873.0]}

а нужно чтобы выводил
{'key1': [0.0000016202, 80873.0]}

Дополнен

а нужно чтобы выводил
{'key1': [0.0000016202, 80873.0]}
и чтобы числа были типа float

По дате
По рейтингу
Аватар пользователя
Просветленный
123456
 dict_temp = {'key1': ['0.0000016202', '80873']} 
 
dic = {key: [f"{float(value):.10f}" if i == 0 else float(value) for i, value in enumerate(values)] for key, values in dict_temp.items()} 
 
print(dic) 
 

Результат:

Аватар пользователя
Оракул
12345678910111213141516
 dict_temp = {'key1' : ['0.0000016202' , '80873']} 
dict = {} 
 
for key in dict_temp: 
    temp = [] 
    for i in range(2): 
        # Используем float для числовых вычислений и str для форматирования 
        float_num = float(dict_temp[key][i]) 
        # Используем форматирование для контроля вывода 
        if "e" in dict_temp[key][i].lower():  # Проверка на экспоненциальный формат 
            temp.append(f"{float_num:.15g}")  # Применяем g-флаг для удаления экспоненциального 
        else: 
            temp.append(f" {float_num:.10f}")  # Форматируем с 10 знаками после запятой 
    dict[key] = temp 
 
print(dict)