Solutions to the proposed problems in the book Introduction to Probability by Grinstead and Snell.
Each solution is written in Python using NumPy when convenient.
The solutions are all under a specific folder emulating the book structure, but the solution per se can be inside a module together with other solutions of related problems or it could be in a module by itself.
The module names are related to the subject of the question, e.g. question 3 of section 1.1 is about a question that gamblers asked Galileo in 1600's, so the name of the module is Galielo.py.
The book is all about probability and its fascinating history. Almost all questions in the book deals mostly with random simulations, so it is natural to implement those simulations in a computer. And, of course, it is a great learning experiment.
Now, about the choice of programming language. A natural choice for me would be MATLAB since I am used to it, but Python contains all features of a great language and on top of that there are great Python modules that are very interesting to use like TensorFlow, NumPy, Scikit, PyLab, etc.