# Introducing Python (2014)

### Appendix C. Py Sci

*In her reign the power of steamOn land and sea became supreme,And all now have strong relianceIn fresh victories of science.*

— James McIntyre *Queen’s Jubilee Ode 1887*

In the past few years, largely because of the software you’ll see in this appendix, Python has become extremely popular with scientists. If you’re a scientist or student yourself, you might have used tools like MATLAB and R, or traditional languages such as Java, C, or C++. In this appendix, you’ll see how Python makes an excellent platform for scientific analysis and publishing.

**Math and Statistics in the Standard Library**

First, let’s take a little trip back to the standard library and visit some features and modules that we’ve ignored.

**Math Functions**

Python has a menagerie of math functions in the standard *math* library. Just type **import math** to access them from your programs.

It has a few constants such as pi and e:

>>> **import** **math**

>>> math.pi

>>> 3.141592653589793

>>> math.e

2.718281828459045

Most of it consists of functions, so let’s look at the most useful ones.

fabs() returns the absolute value of its argument:

>>> math.fabs(98.6)

98.6

>>> math.fabs(-271.1)

271.1

Get the integer below (floor()) and above (ceil()) some number:

>>> math.floor(98.6)

98

>>> math.floor(-271.1)

-272

>>> math.ceil(98.6)

99

>>> math.ceil(-271.1)

-271

Calculate the factorial (in math, *n* !) by using