复制10%优惠码 【96YF71WTUG】
购买优动漫PAINT(CLIP STUDIO PAINT官方中文正版)
详情请戳:https://www.udongman.cn/index.php?m=product&c=csp
本部分有误,更新可见:
https://zhuanlan.zhihu.com/p/533637330
源码内已经注释的很清楚了,
import math # log10及向上修约 x1 = 1000 x2 = 0.0793 y1 = math.log10(x1 * x2) # log10对于小数等可以明确返回相关数字。 y01 = math.ceil(abs(math.log10(x1 * x2))) # math.ceil为向上取整得到小数位数。 if y1 > 0: # 对于log10正数的情况↓将数字转化为科学计数法,并且执行向上修约 z1 = x1 * x2 / pow(10, y01-1)#转化为整数位只有1位的数字 print(z1) z2 = "{:.1f}".format(z1) # 格式化,{:1f},为格式化为小数,保留1位 print(z2) if float(z1) > float(z2): #对于修约后进位的情况↓ if len(str(int(z1 + 0.1))) == 2: z01 = "{:.1f}".format((z1 + 0.1) / 10) + "E+" + str(y01) else: z1 = "{:.1f}".format((float(z2) + 0.1)) z01 = z1 + 'E+' + str(y01-1) #对于进位情况处理结束↑ else: z01 = z2 + 'E+' + str(y01) else: # 对于log10负数的情况↓ z1 = x1 * x2 * pow(10, y01) print(z1) z2 = "{:.1f}".format(z1) print(z2) if float(z1) > float(z2): if len(str(int(z1+0.1))) == 2 : z01 = "{:.1f}".format((z1 + 0.1)/10) + "E-" + str(y01-1) else: z1 = "{:.1f}".format((float(z2) + 0.1)) z01 = z1 + 'E-' + str(y01) else: z01 = z2 + 'E-' + str(y01) print(z01,float(z01))
Copyright © 2022
wuwofcproject.com, All rights reserved
独家内容 未经许可 严禁复制、镜像、转载