大家晚上好,
我需要python项目的帮助。我有兴趣了解以下内容。
假设我在python中将两个数字相乘。
数字=x*y
假设x=3,y= 3.2
总数是9.6
现在我对那个.6很感兴趣
我想把这个.6
赋值给一个变量,这样我以后就可以将它相乘。
如何将.6
赋值给变量?
我尝试使用以下代码:
a = 123.4
number_dec = str(a-int(a))[1:]
a2 = number_dec * 2
但它不起作用。请帮帮忙
发布于 2018-09-10 05:53:02
Python支持对浮点数进行模运算,因此可以使用
>>> 9.6 % 1
0.5999999999999996
请注意,如果数字为负数,这不会给出您想要的结果:
>>> -9.6 % 1
0.40000000000000036
所以通常你会想要
frac = abs(value) % 1
这是我看过的最快的一个:
%timeit frac = abs(value) % 1
77.1 ns ± 0.568 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
%timeit frac = abs(value) % int(value)
196 ns ± 5.77 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
%timeit frac = value - int(value)
156 ns ± 2.42 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
发布于 2018-09-10 05:53:46
发布于 2018-09-10 05:55:04
使用字符串的更简单的方法是:
number = 123.4
number_dec = str(number).split(".")[1]
print(number_dec)
输出:
4
https://stackoverflow.com/questions/52248907
复制相似问题