Gain Proficiency in Python Solving Real World Exercises

Expect to be challenged, deliberate practice is the key to your success as a programmer


I spent about 2 months using sites like Udemy and Codeacademy and while they are good, I've learned more with the challenges here in 3 days than I have in the last 2 months of watching videos and doing very basic exercises. The challenges aren't easy but they do force you to code, fail, Google, read docs, Stack overflow, code more, learn and finally solve the problem. PyBites has been immensely helpful.

» rmendal

New to Python? Start here.

Feature Free Premium Busy Pythonista
Monthly cost (USD) $ 0
$ 20
($ 16.66 when billed yearly)
$ 8
($ 6.66 when billed yearly)
Number of regular Bites accessible 17 332 4 / month
Newbie Bites
Highest belt to achieve PyBites White Ninja Belt PyBites Paneled Ninja Belt PyBites Paneled Ninja Belt
Run your code only (without tests)
Run flake8, black and radon against your code
Offline mode
Bulk download your code
Private Slack Channel
Start Upgrade Upgrade

Rather pay upfront, unlock specific exercises and own them forever? Check out our Bite exercise bundles.





We also support schools / universities, enterprises / startups and recruiters. If you are interested in using our platform in your class / with your team / to recruit talent, Schedule a Demo with us or Contact us for more information.


How our Community experiences our Platform:


I used PyBites extensively during my first 100DaysOfCode round. It is an excellent platform for learning Python. Most exercises are bite-sized enough so there is always room to get in at least one of them even on a busy day. It felt I learned a lot of Python language fundamentals, from beginner to advanced topics, by doing different exercises each day. Also I think the test-driven approach in the exercises are a great for learning, and inspires good routines in programming. On top of all that, they make it fun to learn Python, with scores, Ninja belts and what not!

I am a network engineer, not aspiring to be a developer at all. At the beginning, I just wanted to learn some Python to automate stuff. However, after trying PyBites I delved much deeper and learned much more than I ever supposed to. You guys, came up with an absolutely fascinating way to teach a programming language, and I'm grateful to you for all the fun I had and all things I learned. Thanks, and best luck to you developing this project (and any others you may start in future).

PyBites is the ideal platform to finally break tutorial paralysis and focus on solving a real task.


I love that in PyBites there are pretty many tasks, which are taken from the features, what platform
has itself, for example solving how many days a person coded in a row, or what is top PyBites tags and similar.

Though the biggest value I’ve found for myself is not solving the particular bite, though learning
from others in the forum, sharing/comparing/discussing the solutions and also learnings.


Big wow for me - receiving the personalized video from Bob, once I achieve yet another belt. I was very pleased by such an individual approach and also later, giving the feedback what could be improved in the platform, I’ve received the message
back to put such request in the backlog or case it was simpler, the feature request arrived(released) to the platform a few days later 👏


Well done, Bob and Julian and community, what you've organized around! 🙂

I have been learning Python for 6 months now, but I started using this platform this month. I have really learnt new libraries and how to tackle complex issues by solving the challenges.

I really like the structure of this platform, you can decide to solve Bites only based on a particular area using the Learning Paths link.

Dennis Ritchie said: “The only way to learn a new programming language is by writing programs in it”. This saying is completely justified by PyBites! Their platform gives you immense possibilities to play, experiment and learn with so many different types of pythonic problems, ranging from code challenges, bites and even their interactive courses. Apart from these, PyBites is a community of its own kind. You get help whenever you are in need. Since so many Pythonistas from all across the globe are active here, you get 24*7 support to continue learning in an efficient manner. I literally gained a lot from this place by solving code challenges and learning from and talking to great mentors who are always ready to give you the deepest insight possible. You literally can talk to them even for moral support. How cool is that, don’t you think? Come join our community and become a PyBites Ninja. Happy Coding!

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 came to PyBites because I had a few years of Python experience and was looking for a way to level up in my knowledge of and capability with it as a language for software development. For me that meant re-enforcing all of the fundamentals, and getting a better understanding of and practical experience writing tests.

After reading books and searching the entire internet, I found PyBites to be the best resource for taking me from a beginner/intermediate python programmer to a confident programmer. Not only is PyBites an amazing way to practice and learn, the community is the best and thats one of the biggest advantages an engineer can have - a supportive and knowledgable community.

Since discovering PyBites I continue to learn from and apply the gems I get from the platform and apply in my day to day work as a Network Engineer at my day job and also on all my startups!

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 :-)

Read more community experiences »

We use Python 3.8