Python Challenges#

In this book are available some suggested problems to be solved with python.

The main objective of these challenges is to assist in the development of a problem-solving logic, therefore, the use of existing functions will be avoided as much as possible.

The challenges are structured so that the participant can explore the use of different operators/functions/methods and the difficulty will iteratively increase as the sessions go by.

Challenge Difficulty Scale#

Problems are classified according to complexity using the following color scale:

  • ๐ŸŸข Beginner

  • ๐ŸŸก Intermediate

  • ๐ŸŸ  Proficient

  • ๐Ÿ”ด Expert

Write and test your solutions#

For each proposed problem, a jupyter notebook will be available so that you can write your own solution to the problem and test it.

Working in the cloud#

You can write your code in the cloud using Binder or Google Colab.

To work in the cloud, look for the launch button (๐Ÿš€) in the upper right corner and choose your preferred platform.

Working locally#

To work locally, first clone this GitHub repository:

git clone https://github.com/ARCTraining/python-challenges.git
cd python-challenges

Then, create the conda environment

conda env create --file environment.yml
conda activate python-challenges

Note: depending on your operating system, you may need to replace conda activate with source activate in the above command.

Finally, you can open the contents of this book using jupyter lab (included in the environment) - or any IDE of your choice.

jupyter lab

Proposed Solutions#

A solution is be provided for each proposed problem. The solutions are intended to prioritize learning over optimization.

Note that each proposed solution is just one of the possible solutions for each problem.

Challenge Proposal#

Challenge proposals are welcome โ€“> please, fill the form.