Python

Join the Python Track
Python is a clear and powerful object-oriented programming language with an elegant and easy-to-read syntax. It is ideal for prototyping and ad-hoc tasks, but also sees wide use in scientific computing, web development, and automation.
Join the Python Track
Track mentors

90 Mentors

Our mentors are friendly, experienced Python developers who will help teach you new techniques and tricks.
Track students

43,035 Students

Join thousands of students who have enjoyed learning and improving their skills by taking this track.
Track exercises

117 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

About Python

prices = {'apple': 0.75, 'egg': 0.50}
cart = {
  'apple': 1,
  'egg': 6
}

bill = sum(prices[item] * cart[item]
           for item in cart)

print(f'I have to pay {bill:.2f}')

Python is a strong language for beginners.

There are many resources available for programmers of all levels, the code is highly readable, and in many cases phrases are comparable to those in the English language.

Code can be written and executed from the command line, in an interactive IPython session, or in a Jupyter (IPython) notebook.

The most common form of Python is compiled in C; this is often invisible to the beginning programmer, but if there are uses for which exceptionally fast implementation is needed then C extensions can be written to optimize Python execution.

Python is used extensively in scientific computing, finance, games, networking, internet development, and in assembling pipelines of other programs.

Python was started by Guido van Rossum in 1989; its name is an homage to the comedy troupe Monty Python.

Python 2 is used widely but support may end by 2020; it is highly recommended that beginners use Python 3 (they are similar, but users will encounter some differences).

Python development is shepherded by The Python Software Foundation and there are active community-based user groups worldwide.

Join the Python track

I really like the ability to look at other people's solutions.

I'm working through the F# and Python tracks at the moment. Really like the ability to look at other people's solutions. I've had some helpful comments from others too.

Relaxed. Encouraging. Supportive.

Meet the Python Track mentors

Once you join the Python language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

Avatar of Luisa Lima

Luisa Lima https://github.com/luisalima

Python has been, my on and off go-to language for the past 14 years. With the increasing popularity of its data science and security libraries, I feel that it is more important than ever to help people learn and improve!
Avatar of Mike Kunc

Mike Kunc https://github.com/michaelkunc

I use Python every day in my role as a Data Engineer. My last name is pronounced 'Koontz'.
Avatar of James Haney

James Haney https://github.com/jrhaneydata

I'm a data scientist who's been using Python at work for 3-4 years. I love how readable and versatile it is.
Avatar of Nasy

Nasy Nasy Moe

I really like to use python to solve things in life, and I also desire to use her extraordinary features. Hope you can enjoy python, too. Besides, I come from China, so if you use Chinese, I can also understand it.
Avatar of Stig Johan Berggren

Stig Johan Berggren https://github.com/Stigjb

I'm using Python for data science/machine learning and personal projects. I like the language for the great package ecosystem and the expressive and readable code.
Avatar of Bahram Aghaei

Bahram Aghaei https://github.com/greatbahram/

I'm enthusiastic learner who is always looking for new projects and challenges and a huge Free Software enthusiast. Reach out if you want to talk about technology, life and sports.
Fun. Challenging. Interesting

Community-sourced Python exercises

These are a few of the 117 exercises on the Python track. You can see all the exercises here.

Nth Prime
easy
algorithms
lists
loops
math
Tournament
medium
conditionals
loops
maps
parsing
ISBN Verifier
easy
conditionals
integers
parsing
strings
type conversion
Say
easy
loops
parsing
text formatting
transforming
Matching Brackets
easy
parsing
recursion
stacks
strings
Yacht
easy
conditionals
equality
games
integers
pattern matching
sequences
Passionate. Knowledgeable. Creative.

Meet the Python Track maintainers

The Python Maintainers are the brains behind the Python Track. They spend their spare time creating interesting and challenging exercises that we can all learn from. We are incredibly grateful for their hard work. Here are the bios of a few of the maintainers of this track.

Avatar of Corey McCandless

Corey McCandless

Big fan of homemade bread and reusable code.
Avatar of Michael Morehouse

Michael Morehouse My Techie Blog

Although Python wasn't my first -- and won't be my last -- programming language, it remains my favorite for introducing others to the joys, the pains, the infrequent ecstacies, and the occasional terrors of life before the REPL.
Avatar of Dog

Dog

I can not only fetch JSON, but parse it too.

Get started with the Python track. As with everything on Exercism, it's 100% free!

Join the Python Track