- SymPy Tutorial
- SymPy - Home
- SymPy - Introduction
- SymPy - Installation
- SymPy - Symbolic Computation
- SymPy - Numbers
- SymPy - Symbols
- SymPy - Substitution
- SymPy - sympify() function
- SymPy - evalf() function
- SymPy - Lambdify() function
- SymPy - Logical Expressions
- SymPy - Querying
- SymPy - Simplification
- SymPy - Derivative
- SymPy - Integration
- SymPy - Matrices
- SymPy - Function class
- SymPy - Quaternion
- SymPy - Solvers
- SymPy - Plotting
- SymPy - Entities
- SymPy - Sets
- SymPy - Printing
- SymPy Useful Resources
- SymPy - Quick Guide
- SymPy - Useful Resources
- SymPy - Discussion

- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who

The core module in SymPy package contains Number class which represents atomic numbers. This class has two subclasses: Float and Rational class. Rational class is further extended by Integer class.

Float class represents a floating point number of arbitrary precision.

>>> from sympy import Float >>> Float(6.32)

The output for the above code snippet is as follows −

**6.32**

SymPy can convert an integer or a string to float.

>>> Float(10)

**10.0**

Float('1.33E5')# scientific notation

**133000.0**

While converting to float, it is also possible to specify number of digits for precision as given below −

>>> Float(1.33333,2)

The output for the above code snippet is as follows −

**1.3**

A representation of a number (p/q) is represented as object of Rational class with q being a non-zero number.

>>> Rational(3/4)

The output for the above code snippet is as follows −

**$\frac{3}{4}$**

If a floating point number is passed to Rational() constructor, it returns underlying value of its binary representation

>>> Rational(0.2)

The output for the above code snippet is as follows −

**$\frac{3602879701896397}{18014398509481984}$**

For simpler representation, specify denominator limitation.

>>> Rational(0.2).limit_denominator(100)

The output for the above code snippet is as follows −

**$\frac{1}{5}$**

When a string is passed to Rational() constructor, a rational number of arbitrary precision is returned.

>>> Rational("3.65")

The output for the above code snippet is as follows −

**$\frac{73}{20}$**

Rational object can also be obtained if two number arguments are passed. Numerator and denominator parts are available as properties.

>>> a=Rational(3,5) >>> print (a) >>> print ("numerator:{}, denominator:{}".format(a.p, a.q))

The output for the above code snippet is as follows −

**3/5**

**numerator:3, denominator:5**

>>> a

The output for the above code snippet is as follows −

**$\frac{3}{5}$**

Integer class in SymPy represents an integer number of any size. The constructor can accept a Float or Rational number, but the fractional part is discarded

>>> Integer(10)

The output for the above code snippet is as follows −

**10**

>>> Integer(3.4)

The output for the above code snippet is as follows −

**3**

>>> Integer(2/7)

The output for the above code snippet is as follows −

**0**

SymPy has a **RealNumber** class that acts as alias for Float. SymPy also defines Zero and One as singleton classes accessible with S.Zero and S.One respectively as shown below −

>>> S.Zero

The output is as follows −

**0**

>>> S.One

The output is as follows −

**1**

Other predefined Singleton number objects are Half, NaN, Infinity and ImaginaryUnit

>>> from sympy import S >>> print (S.Half)

The output is as follows −

**½**

>>> print (S.NaN)

The output is as follows −

**nan**

Infinity is available as oo symbol object or S.Infinity

>>> from sympy import oo >>> oo

The output for the above code snippet is as follows −

**$\infty$**

>>> S.Infinity

The output for the above code snippet is as follows −

**$\infty$**

ImaginaryUnit number can be imported as I symbol or accessed as S.ImaginaryUnit and represents square root of -1

>>> from sympy import I >>> I

When you execute the above code snippet, you get the following output −

*i*

>>> S.ImaginaryUnit

The output of the above snippet is as follows −

*i*

>>> from sympy import sqrt >>> i=sqrt(-1) >>> i*i

When you execute the above code snippet, you get the following output −

**-1**

Advertisements