Learn Python From the Comfort of Your Own Browser

The best way to learn to code in Python is to actually use the language.

Our platform offers effective Test-Driven Learning which will be key to your progress.



Join 22800 Pythonistas and start coding!

Login and get coding

>>> import you

PyBites Platform:

  • teaches you many different aspects of the Python language
  • is interdisciplinary covering both standard library and external modules
  • provides a hands-on approach, more efficient than (passive) books and videos
  • uses Test-Driven Learning 1 that teaches you to code towards a spec
  • removes most of the what should I code next? which can stall your learning
  • pushes both new and experienced Python developers past their comfort zone
  • lets you earn Ninja badges and certificates, all at your own pace
  • prepares developers for paid gigs and new exciting jobs
  • is brought to you by experienced Python trainers
  • gives you access to a knowledgeable and friendly Python community
PyBites Dashboard
PyBites Bite Page
The only way to learn a new programming language is by writing programs in it.
- Dennis Ritchie
There is only one way to eat an elephant: a bite at a time.
- Desmond Tutu

How our Community experiences our platform:


PyBites was instrumental in getting me up to speed fast with Python after a career with other technologies. Not only was it directly responsible for helping me land a great job but it also exposed me to many different aspects of Python programming that crosses multiple disciplines, something that very few resources do.

Overall the PyBites is a great resource to jump in and begin coding in Python. Each bite showcases a certain topic in Python that helps establish the fundamentals of the language. Looking forward in continuing the journey. :)

This is a great platform for getting started with Python and pulling you along to a decent level and beyond. It removes most of the 'what should I try or do next?' which can be the cause of a stall in learning. All you need to do each day is crack on with the next Bite or challenge, and your knowledge and skill grows along with the time invested. I'm hooked.

During my long commutes, I wanted to invest the time, instead of being bored out of my mind.
I started listening to TalkPythonToMe, which lead me to #100DaysOfCode. After spending a couple of hours every day on the challenges,
I got access to some bites on the platform and I got hooked! Perfect timing as the Python Bundle was right around the corner and it was the start of my vacation.

I got hooked to the level-based approach. The introduction to the different parts of the standard library and the complexity of the challenges is perfect. It is hard enough to need to read through the documentation or to justify the approach while being specific enough to not 'waste time' on boilerplate code.

Before using PyBites and TalkPythonToMe I saw myself as a python script kiddy, enough knowledge to get the job done but no idea how to do it 'pythonicly'. I've completed all of the challenges on the platform in a rather short amount of time because I really enjoyed every bite. In a short period, I feel like I learned how to tackle a large variety of common tasks and know what is considered 'pythonic' and what isn't in most cases. :)

Now I spend more time on in the standard library documentation or other docs instead of looking up google queries/stack overflow questions.

Thanks, PyBites for this challenging (and addicting) platform!

I spent too long floundering in Tutorial Purgatory before encountering the Pybites Code Challenges. The challenges vary in difficulty, don't have to be done in order, and each covers a limited objective, such as using Pandas in a particular way. Some bites need only the standard library, others introduce you to useful third-party libraries and APIs. These aren't exhaustive deep dives, but enough of an introduction to accomplish something useful enough to adapt to your own projects: parsing an RSS feed, analyzing data scraped from a web page, cleaning up text, searching logs, and so on.

Unlike some more structured training sites that require letter-perfect solutions before you can move on, PyBites uses - and in many cases lets you see - the tests that judge your solution, written in pytest. Your code can be ugly and evil, but if it passes the tests, you can see the official solution, and access the bite forum that shows how others in the community solved it. I'm often embarrassed by my solutions, but even winning ugly is worth it for the learning experience and the feedback you can get from sharing your code. It's not about getting THE correct answer - often there are multiple ways to do it - but about consistent improvement, and being able to go back and see your progress.

As a software tester, I really appreciate the pytest modules and often find that building my solutions through TDD is a great way to learn. I appreciate the wide mix within the PyBites community - complete beginners to data scientists and prominent Pythonista bloggers, podcasters, and trainers.

The gamification aspect can be addicting, but I've learned not to take it personally when others rise through the ranks like pool sharks. When they're coming up fast or slightly ahead, I'm motivated to work a little harder, until they leave me in the dust. But there's always someone else behind them to keep you going. There's a real satisfaction in rising through the ranks, earning the next "belt." The community - here and in the Slack channel - is very supportive and helpful. You can get help when you're stuck, and cheers when your submission returns Green.

This site has kept me coming back for over a year now, and I see a real improvement in my ability to code and solve problems in Python. There are new bites nearly every week, and the site is continually evolving with new features. Completed bites are worth revisiting as new members post their solutions, helping to refresh and reinforce the concepts you learned when you solved it.

I recently interviewed for this Data Engineer position. I was able to answer questions during their technical phone screening that I otherwise wouldn’t have known because I kept up with the bites.

I ended up getting an offer and I start next Monday!

It’s true that there is a degree of luck to this, but practicing allowed me to capitalize on the luck!

I just finished the beginner bites and wanted to say thank you, and what a joy it's been to have this resource the past few months. As someone who doesn't get a chance to work in Python daily or even weekly sometimes, these exercises have really helped me stay grounded in Python as well as explore a lot of areas of the standard library I wasn't familiar with.

On to intermediate!

After being a Pythonista for some time through online reading and writing my own code, I still felt like I missed out on a lot of concepts to make my code more Pythonic and to make use of Python's full potential.

By taking a couple of challenges a day, I managed to take in some more difficult concepts that I didn't understand before.
The bites are just that, small bites of information, all coming with a different Python feature or chaining features together into full-blown usable tools. This allows you to learn at your own rate, while taking breaks as you deem necessary.

The community is very active and helpful if you have questions or you just wanna have a laugh while taking a break from coding. Any problems on the platform or questions about why your code doesn't run? There's always someone to help.

If you're looking for a Python community where you can REALLY develop your skill while getting support from people around the world, don't look any further.

A final note for Bob and Julian, I'm still fresh meat in the community, but the way you guys are handling things makes people feel appreciated as members.
Python has become interesting again and we don't get overwhelmed with useless information. It's a huge language, so sometimes you need a roadmap to get from point to point. You have done a tremendous job mapping this all out.

Thank you guys for turning us into real ninja's :-)

Login and get coding All Testimonial »

  1. Read more about Test-Driven Learning here.
We use Python 3.7