如何在sympy(Python)中将float转换为int?

时间:2015-12-14 17:31:35

标签: python casting sympy

我有一个同情的浮动常数,例如,

x=Float(3.2)

我需要将浮点数转换为整数,即

x+Int(3)

是否有任何可以将Float(3.2)转换为Int(3)的内置方法?

2 个答案:

答案 0 :(得分:4)

将浮点数转换为 SymPy整数

In [1]: a = 3.2

In [2]: b = Integer(a)

In [3]: b
Out[3]: 3

SymPy整数在除法下以数学方式

In [4]: b/2
Out[4]: 3/2

将相同的浮点数转换为 Python整数

In [5]: c = int(a)

In [6]: c  
Out[6]: 3

在Python 3中或使用将来的分区,您可以获得一个浮点:

In [7]: c/2
Out[7]: 1.5

答案 1 :(得分:3)

只需使用Integer()方法即可。它允许将float转换为int。 Integer()总是将浮动数降低到圆形数字。

翻译示例:

>>> a = 3.2
>>> b = Integer(a)
>>> b
3