获取多个数字

发布于 2024-11-11 04:42:04 字数 470 浏览 2 评论 0原文

我一直在寻找一种在 python 中只获取十进制数逗号右侧 4 位数字的方法,但我找不到。看了这篇文章,---> 使用新的 Python 格式函数对小数进行四舍五入 ,但是那里写的函数...

    >>> n = 4
    >>> p = math.pi
    >>> '{0:.{1}f}'.format(p, n)
    '3.1416'

...似乎不适用于我的情况。

我导入了模块“数学”和“小数”,但也许我缺少其他一些要导入的模块,但我不知道要导入哪些模块。

谢谢大家,如果这个问题已经发布,我们深表歉意。

佩克斯

I've been searching for a way in python to get only 4 digits on the right of the comma of a decimal number, but i couldn't find. Took a look on this post,---> Rounding decimals with new Python format function
,but the function written there...

    >>> n = 4
    >>> p = math.pi
    >>> '{0:.{1}f}'.format(p, n)
    '3.1416'

...seems not to work in my case.

I imported the modules "math" and "decimal", but maybe i'm missing some others to import, but i don't know which of them to import.

Thanks everyone, and sorry if this issue has already been posted.

Peixe

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

云雾 2024-11-18 04:42:04
"%.3f" % math.pi

我知道它使用旧语法,但我个人更喜欢它。

"%.3f" % math.pi

I know its using the old syntax but I personally prefer it.

最近可好 2024-11-18 04:42:04

你所拥有的很好(将5舍入到6)

如果你想要截断而不是四舍五入,你可以这样做:

from math import pi as p
print p
print int(p*10**4)/10.0**4

p=str(p).split(".")
p[1]=p[1][:4]
print ".".join(p)

输出:

3.14159265359

3.1415

3.1415

What you have is fine (rounding the 5 up to a 6)

If you want truncation instead of rounding you could go:

from math import pi as p
print p
print int(p*10**4)/10.0**4

p=str(p).split(".")
p[1]=p[1][:4]
print ".".join(p)

output:

3.14159265359

3.1415

3.1415

爱给你人给你 2024-11-18 04:42:04

如果您只需要浮点数的其余部分,可以将其转换为字符串并按 '.':

>>> str(math.pi).split('.')[1][:4]
<<< '1415'

decimal.Decimal 分割:

>>> Decimal(math.pi).as_tuple()[1][1:5]
<<< (1, 4, 1, 5)

If you only want the remainder of a float you could convert to a string and split on '.':

>>> str(math.pi).split('.')[1][:4]
<<< '1415'

or decimal.Decimal:

>>> Decimal(math.pi).as_tuple()[1][1:5]
<<< (1, 4, 1, 5)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文