Python 指数到浮点(获取浮点的所有十进制数)
我需要得到所有可能的十进制数,但我在spinbox上有19个数字字符的限制。设置小数位数的静态数字和设置小数位数的静态数字(setDecimals())是不可接受的,因为我得到的值是动态的 例如,我想转换赫兹: 赫兹:1.00 兆赫:1e-6 千兆赫兹:1e-9 我希望它采用以下格式: 1.00, 0.000006, 0.000000009 对!!小数点是动态的 这是转换代码(字典值尚未完成):Python 指数到浮点(获取浮点的所有十进制数),python,Python,我需要得到所有可能的十进制数,但我在spinbox上有19个数字字符的限制。设置小数位数的静态数字和设置小数位数的静态数字(setDecimals())是不可接受的,因为我得到的值是动态的 例如,我想转换赫兹: 赫兹:1.00 兆赫:1e-6 千兆赫兹:1e-9 我希望它采用以下格式: 1.00, 0.000006, 0.000000009 对!!小数点是动态的 这是转换代码(字典值尚未完成): 转换公式={Hz':1,'kHz':1e-3,'MHz':1e-6,'GHz':1e-9, “s”
转换公式={Hz':1,'kHz':1e-3,'MHz':1e-6,'GHz':1e-9,
“s”:1,“ms”:1e-3,“us”:1e-6,“ns”:1e-9,
“V”:1,“mV”:1e-3}
Python包完成这项工作,正如所示。1e-9和0.000000009是相同的数字,只是以不同的方式编写。您正在询问如何以一种格式或另一种格式打印?以0.000000009格式。因为当我打印数字时,它是1e-9所有小数位?真正地如果该值是π,或者更简单的值,比如1/3,该怎么办?我在spinbox上有一个数字字符限制,最多为19。
'%.19f'%x
将浮点数格式化为19位
if FREQUENCY_UNIT_NAME == title or AMPLITUDE_UNIT_NAME == title:
output_value = input_value * (conversion_formula[current_unit] / conversion_formula[base_unit])
elif title == TIME_UNIT_NAME:
output_value = input_value * (conversion_formula[base_unit] / conversion_formula[current_unit])