Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


My solutions to Project Euler exercises. Currently this lists only solutions in Python 3.6, though I may eventually add some solutions in other languages as well.

All solutions should be run from the /Project-Euler directory. There's a small preamble in some solutions that appends to the system path so that Utilities can be imported. For example, from here you might run: python3 005/

Tools and Addenda

You may find the following useful:

  • running this generates a new folder and solution template. Takes one command-line argument: the new problem. Example: python3 999.

  • recursively cleans out all the vim swapfiles in the directory. Remember to chmod 755 before attempting to use.

  • runs all the tests in the Tests directory, with verbose output. Call with python3

  • Tests: directory containing unittests for the Utilities. Call with e.g. python3 Tests/

  • Utilities: directory containing modules containing frequently used/re-usable helper functions.

  • runs all the solutions files currently in the Problems subdirectories. Verifies the solutions against the canonical values. This is useful to check that all solutions are still working as desired, even after having made some changes to the Utilities. Run simply with python3

Further Notes

There's no requirements.txt because this project solely uses the standard modules that are included with any conventional installation of Python 3.6, as well as the custom-written Utilities.

I've also featured this project on my blog, where I wrote a little bit about it.


My solutions to Project Euler exercises in Python 3.6.







No releases published


No packages published