This book consists of seven chapters and two appendices. Each chapter
ends with challenges for the reader. I recommend giving these a try, as
there’s much to learn from trying to write your own original programs.
Some of these challenges will ask you to explore new topics, which is a
great way to enhance your learning.
• Chapter 1, Working with Numbers, starts off with basic mathematical
operations and gradually moves on to topics requiring a higher level of
math know-how.
• Chapter 2, Visualizing Data with Graphs, discusses creating graphs
from data sets using the matplotlib library.
• Chapter 3, Describing Data with Statistics, continues the theme of
processing data sets, covering basic statistical concepts—mean, median,
mode, and the linear correlation of variables in a data set. You’ll also

learn to handle data from CSV files, a popular file format for distribut-
ing data sets.
Chapter 4, Algebra and Symbolic Math with SymPy, introduces sym-
bolic math using the SymPy library. It begins with the basics of repre-
senting and manipulating algebraic expressions before introducing

more complicated matters, such as solving equations.

• Chapter 5, Playing with Sets and Probability, discusses the representa-
tion of mathematical sets and moves on to basic discrete probability.

You’ll also learn to simulate uniform and nonuniform random events.
• Chapter 6, Drawing Geometric Shapes and Fractals, discusses using
matplotlib to draw geometric shapes and fractals and create animated

• Chapter 7, Solving Calculus Problems, discusses some of the math-
ematical functions available in the Python standard library and SymPy

and then introduces you to solving calculus problems.
• Appendix A, Software Installation, covers installation of Python 3,
matplotlib, and SymPy on Microsoft Windows, Linux, and Mac OS X.
• Appendix B, Overview of Python Topics, discusses several Python
topics that may be helpful for beginners.