SymPy中的数字类是什么

SymPy中的数字类是什么

Number类SymPy Python中表示原子数。它有三个子类。它们是Float, Rational, 和Integer。这些子类用来表示不同种类的数,如整数、浮动小数和有理数。还有一些预定义的单子对象,代表NaN、Infinity和虚数。

Float 类

Float类是用来表示浮点数的。这个Float类的语法给定如下

from sympy import Float
Float(any_Number)

这里的any_Number是指浮点数或任何整数。

要使用Float(),必须先从sympy包中导入Float类。float方法能够将一个整数表示为浮点数,并且能够限制小数点后的数字。它还能将科学符号表示为数字。

# import Float class from sympy
from sympy import Float
 
# converting integer to float
print(Float(5))
 
# limiting the digits
print(Float(22.7))
print(Float(22.7, 4))
 
# Scientific notation to number format
print(Float('99.99E1'))

输出

5.00000000000000
22.7000000000000
22.70
999.900000000000

Rational 类

有理数类是用来表示p/q形式的数字,即分子/分母形式的数字。有理数类的语法提及如下

from sympy import Rational
Rational(any_Number)

这里的any_Number可以是一个有理数、整数或浮点值。

在使用有理数类之前,首先需要将其导入。有理数类能够将字符串转换为有理数,如果需要的话,还能够限制分母的数值。

# import Rational class from sympy
from sympy import Rational
 
# representing a rational number
print(Rational(1/2))
 
# Representing a string in p/q form
print(Rational("12/13"))
 
print(Rational(0.3))
 
# limiting the digits in denominator
print(Rational(0.3).limit_denominator(10))
 
# Passing 2 numbers as arguments to
# Rational class
print(Rational(5, 7))

输出

1/2
12/13
5404319552844595/18014398509481984
3/10
5/7

Integer 类

sympy中的integer类是用来表示整数的。它将浮点数和有理数转换为整数。整数类的语法如下所示

from sympy import Integer
Integer(any_Number)

这里的any_Number可以是整数、有理数和浮点数。

from sympy import Integer
 
# converting float to integer
print(Integer(1.5))
 
# converting rational to integer
print(Integer(500/200))

输出

1
2

让我们来看看一个示例代码,它描述了一些预定义的单子对象,代表了一些重要的记号。

from sympy import S
 
# represents not a number
print(S.NaN)
 
# represents Infinity
print(S.Infinity)
 
# represents imaginary value
print(S.ImaginaryUnit)
 
# represents 1/2 value
print(S.Half)

输出

nan
oo
I
1/2

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程