def as_num(x):
y = '{:.1f}'.format(x) # .1f 保留1位小数 想为十位就这样写10f
return y
if __name__ == '__main__':
str = '9.13403003438304e+17'
if ('E' in str or 'e' in str):
xx = as_num(float(str))
print(xx) #913403003438304000.0
xxx = str(xx).replace(".0", "")#把小数点拿掉
print(xxx) # 913403003438304000
虽然有点复杂但是解决了我的需求。。。。。
本文介绍了一种将浮点数转换为科学计数法,并进一步格式化输出的方法。通过定义函数defas_num(x),可以将输入的浮点数转换为保留一位小数的科学计数法表示,同时处理了包含'e'或'E'的特殊字符串形式的数值。最终输出去掉小数点后的整数部分。
3557





