gpt4 book ai didi

python - 将 Python 中的 float 转换为科学数

转载 作者:行者123 更新时间:2023-12-04 08:35:40 25 4
gpt4 key购买 nike

所以我在 Python 中有一个应用程序,可以计算“PV = nRT”化学方程式中的变量数。代码是这样的:

r = 0.082
# Variables
p = float(input('Pressure = '))
p_unit = input('Unit = ')

print('_____________________')

v = float(input('Volume = '))
v_unit = input('Unit = ')

print('_____________________')

n = float(input('Moles = '))

print('_____________________')

t = float(input('Temperature = '))
t_unit = input('Unit = ')

# Unit Conversion
if p_unit == 'bar':
p = p * 0.987

if v_unit == 'cm3':
v = v / 1000

if v_unit == 'm3':
v = v * 1000

if t_unit == 'c':
t = t + 273

if t_unit == 'f':
t = ((t - 32) * (5 / 9)) + 273


# Solve Equation
def calc():
if p == 000:
return (n * r * t) / v
if v == 000:
return (n * r * t) / p
if n == 000:
return (p * v) / (r * t)
if t == 000:
return (p * v) / (n * r)
然后最后我运行该函数以获得结果。但问题是我想将结果转换为科学数(例如 0.005 = 5 x 10^-3)。我尝试了以下解决方案:
def conv_to_sci(num):
i = 0
if num > 10:
while num > 10:
num / 10
i = i - 1
if num < 10:
while num < 10:
num * 10
i = i + 1
return num + "x 10^" + i
但它没有用。任何问题?

最佳答案

我只是使用 numpy 来获得科学记数法

import numpy as np
num = 0.005
num_sc = np.format_float_scientific(num)
>>> num_sc
'5.e-03'

关于python - 将 Python 中的 float 转换为科学数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64817534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com