我邪魅一笑 发表于 2022-10-23 09:51:46

小白,求教:如何用python输出一个指定位数的浮点数?

比如: 34.67----->34.670000
         162.9------->162.90000
即整数位数加上小数位数和为固定数8,整数部分变长时,小数部分变短。

jackz007 发表于 2022-10-23 10:39:24

本帖最后由 jackz007 于 2022-10-23 10:42 编辑

d = 1.234
s = str(d)
if len(d) < 9:
    s = s + '0' * (9 - len(d))
elif len(d) > 9:
    s = s[: 9]
print(s)

xiangjianshinan 发表于 2022-10-23 10:41:39

这可还行?
def get8(argv_float) -> str:
    try:
      myz = len(str(int(argv_float)))# 获取整数位数
      if myz >= 8:
            # return "{:.0f}".format(argv_float) # 当整数位大于8位时,返回整数
            return str(int(argv_float))
      else:
            return format(argv_float,str(8-myz)+'f')# 返回8位小数
    except:
      return '0'   # 参数格式不对等出错时,返回零
a = 44444444440.88
print(get8(a))
页: [1]
查看完整版本: 小白,求教:如何用python输出一个指定位数的浮点数?