python浮点数去掉小数点后的0,为什么python除法结果会有小数点0

  python浮点数去掉小数点后的0,为什么python除法结果会有小数点0

  本文主要介绍了利用Python去除小数点后多余的零的问题,有很好的参考价值。希望对大家有帮助。如有错误或不足之处,请不吝赐教。

  

目录
Python删除小数点后多余的0 Python删除数字前的0

  

Python去除小数点后面多余的0

  最近在写Python导入数据的脚本。百度必应搜了很多,没有完美的解决方案。

  在这里,我还是要吐槽一下百度,真的很垃圾。

  后来,FQ谷歌了它,当第一个条目出来时,它找到了一种方法。

  我搬过来整理一下,使用时可能遇到的问题。对希望看到这篇文章的读者很有用。

  首先介绍头文件。

  从十进制导入十进制

  举个例子

  编号100.2000

  第一次用十进制( 100.2000 )。normalize()这样,100.2的结果就是想要的结果。

  但是,normalize()有一个问题。如果是100.00000,则与decimal相同(“100.0000”)。normalize()得到的结果是1E 2。

  那么这种情况该怎么办呢?就是“to_integral”的另一种用法,像这样:Decimal(100.000 )。to_integral()得到的结果是100,这是想要的结果。

  两种兼容性如何更好?你可以在去掉多余的0后,先判断它们是否相等:

  十进制( 100.2000)==十进制( 100.2000 )。to _ integral()

  错误的

  Decimal( 100.0000 )==Decimal( 100.0000 )。to _ integral()

  真实的

  根据这个判断,你可以自己写一个函数。

  def remove_exponent(数字):

  如果num==num.to_integral()else num . normalize(),则返回num . to _ integral()

  最后调用这个函数,下面是上面例子的结果。

  移除指数(十进制( 100.2000 ))

  十进制( 100.2 )

  移除指数(十进制( 100.0000 ))

  十进制( 100 )

  移除指数(十进制( 0.2000 ))

  十进制( 0.2 )

  这里的输出是一个十进制类型,因为这个类型在被调用的方法中。它可以直接作为一个浮动使用。如果要改成字符串类型,用str()把上面的结果包装起来就行了,这个就不解释了。

  这样就解决了题目中提到的去掉小数点后多余的零的问题。

  

Python去掉数字前面的0

  有时文件编号是通过在前面加零自动生成的,当我们需要读取这些文件名对应的编号时,前面的零会给判决语句带来麻烦。那么我们如何去除前面的零呢?

  因为Python默认转换成字符串时忽略前面的0,所以可以通过格式转换来实现:

  str(000001)

  1

  int(str(000001))

  任何人

  以上个人经验,希望给你一个参考,也希望你能支持盛行的IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: