首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将小数分配给变量Python

将小数分配给变量Python
EN

Stack Overflow用户
提问于 2018-09-10 05:48:51
回答 3查看 1.6K关注 0票数 0

大家晚上好,

我需要python项目的帮助。我有兴趣了解以下内容。

假设我在python中将两个数字相乘。

数字=x*y

假设x=3,y= 3.2

总数是9.6

现在我对那个.6很感兴趣

我想把这个.6赋值给一个变量,这样我以后就可以将它相乘。

如何将.6赋值给变量?

我尝试使用以下代码:

代码语言:javascript
复制
a = 123.4
number_dec = str(a-int(a))[1:]
a2 = number_dec * 2

但它不起作用。请帮帮忙

EN

回答 3

Stack Overflow用户

发布于 2018-09-10 05:53:02

Python支持对浮点数进行模运算,因此可以使用

代码语言:javascript
复制
>>> 9.6 % 1
0.5999999999999996

请注意,如果数字为负数,这不会给出您想要的结果:

代码语言:javascript
复制
>>> -9.6 % 1
0.40000000000000036

所以通常你会想要

代码语言:javascript
复制
frac = abs(value) % 1

这是我看过的最快的一个:

代码语言:javascript
复制
%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)
票数 4
EN

Stack Overflow用户

发布于 2018-09-10 05:53:46

给定一个整数int()会截断小数部分,因此使用

代码语言:javascript
复制
n = 4.5
fractional = n - int(n) #0.5

你可以得到它。

票数 2
EN

Stack Overflow用户

发布于 2018-09-10 05:55:04

使用字符串的更简单的方法是:

代码语言:javascript
复制
number = 123.4    
number_dec = str(number).split(".")[1]
print(number_dec)

输出:

代码语言:javascript
复制
4
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52248907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档