go back  What to code next?

Bite Level Description & Tags
Bite 91. Matching multiple strings Beginner level Catching up after #PyCon2018 ... in this Bite you do …
3.10 all any string matching
Bite 113. Filter words with non-ascii characters Intermediate level In this Bite you extract words from a text that …
3.10 all ascii ord unicode
Bite 192. Some logging practice Beginner level You are to flesh out the log_it() function so that …
3.10 callable logging
Bite 2. Regex Fun Advanced level Learn some Python regular expressions by completing the following three …
3.10 findall freebie re regular expressions
Bite 28. Converting date strings to datetimes Intermediate level In this Bite you are provided with a list of …
3.10 Counter datetime findall
Bite 23. Find words that are > 95% similar Advanced level Given a list of tags of our blog find the …
3.10 difflib file processing findall itertools SequenceMatcher
Bite 39. Calculate the total duration of a course Intermediate level In this Bite you read in a text file with …
3.10 datetime findall numbers timedelta
Bite 173. Set up future notifications Intermediate level Let's do another datetime processing Bite. Complete add_todo below that …
3.10 datetime findall f-strings timedelta
Bite 17. Form teams from a group of friends Intermediate level Write a function called friends_teams that takes a list of …
3.10 itertools
Bite 21. Query a nested data structure Beginner level Given the provided cars dictionary: Get all Jeeps Get the …
3.10 data structures dictionary comprehensions list comprehensions sorting
Bite 25. No promo twice, keep state in a class Intermediate level In this bite a real world scenario: PyBites has a …
3.10 classes exception handling properties
Bite 30. Movie data analysis Intermediate level In this Bite we are going to parse a csv …
3.10 data analysis defaultdict freebie mean movie data namedtuple sorting
Bite 36. Having fun with *args and **kwargs Intermediate level Write a function called get_profile that takes: a required name, …
3.10 args function arguments kwargs
Bite 38. Using ElementTree to parse XML Beginner level In this Bite you will use ElementTree to parse some …
3.10 movie data xml
Bite 47. Write a new password field validator Intermediate level You know these Create a new password forms? They do …
3.10 re string module
Bite 49. Scrape Packt's html with BeautifulSoup Intermediate level In this Bite you will parse Packt's free learning ebook …
3.10 beautifulsoup namedtuple requests
Bite 64. Fix a truncating zip function Beginner level Bert is in charge of organizing an event and got …
3.10 itertools zip
Bite 65. Get all valid dictionary words for a draw of letters Intermediate level This Bite focusses on the use of itertools. To that …
3.10 itertools Scrabble set
Bite 66. Calculate the running average of a sequence Beginner level Write a function that takes a sequence of items and …
3.10 enumerate itertools mean
Bite 68. Remove punctuation characters from a string Beginner level Complete remove_punctuation which receives an input string and strips out …
3.10 string manipulation string module
Bite 71. Keep state in a class + make its instance callable Intermediate level In this Bite you write a small class to keep …
3.10 classes dunder methods
Bite 73. Organize a meeting between timezones (pytz) Intermediate level Help PyBites community friends find a reasonable common time to …
3.10 pytz timezones
Bite 74. What day of the week were you born on? Beginner level Complete weekday_of_birth_date which takes a date object of a birthday …
3.10 calendar
Bite 76. The singledispatch countdown challenge Advanced level We are stoked and grateful to have Martin have you …
3.10 decorators functools singledispatch
Bite 78. Find programmers with common languages Intermediate level Similar as last Bite we do another comparison of sequences …
3.10 set set operations
Bite 79. Parse a csv file and create a bar chart Intermediate level We played a bit with the Slack API today and …
3.10 bar chart community csv requests
Bite 93. Rock-paper-scissors and generator's send Advanced level Generators are cool right?! Did you know you can send …
3.10 coroutines games random
Bite 94. Parse PyCon talk data from YouTube Advanced level PyCon2018 was awesome! But you clearly had to choose the …
3.10 list comprehensions max namedtuple
Intro Bite 06. Strip out vowels and count the number of replacements Intro level In this Bite we'd like you to loop over the …
3.10 counting freebie regular expressions replace string manipulation Zen of Python
Bite 118. List exercise: return first occurrence indices of duplicated words Intermediate level In this Bite you are presented with a list of …
3.10 counting list comprehensions set
Bite 122. Check if two words are anagrams Intermediate level An anagram is a word or phrase formed by rearranging …
3.10 anagram string matching
Bite 127. Return the right ordinal suffix for a number Intermediate level In this Bite you complete a function that takes an …
3.10 dict modulo numbers string manipulation
Bite 136. Bloodtypes Beginner level Check red blood cell compatibility between donor and recipient. For …
3.10 enum exception handling multi type input
Bite 137. Gourmets' Nightmare Intermediate level Many gourmets struggle to find the perfect pairing of wines …
3.10 Counter intersection operator sorting
Bite 140. PyBites First Pandas Bite Intermediate level This is a Pandas proof-of-concept Bite. We just added the …
3.10 csv data analysis pandas
Bite 142. Exception Handling: Calculate the Winning Player Intermediate level Complete the two functions below: calculate_score takes a list of …
3.10 exception handling namedtuple numbers
Bite 143. Look up a value in 3 dictionaries Beginner level In this Bite you are presented with 3 dictionaries. Complete …
3.10 collections dict
Bite 150. Turn messy CSV into JSON Intermediate level At the 1 year mark of our platform here is …
3.10 csv json pandas re string manipulation
Bite 156. Make an index of story characters Intermediate level You know the index at the end of a book …
3.10 collections defaultdict enumerate sorting string matching
Bite 160. 15-way Rock Paper Scissors Advanced level In this Bite you are going to write a 15-way …
3.10 csv dict exception handling games
Bite 162. Vertically align output of counters Intermediate level In this Bite you are tasked with "physically" aligning the …
3.10 string formatting
Bite 174. String manipulation and metrics Advanced level This bite will get you to play around with creating …
3.10 Counter dataclasses list comprehensions properties string formatting string manipulation translate
Bite 179. Strip comments from Python code Advanced level In this Bite you will strip off all comments from …
3.10 comments regular expressions string parsing
Bite 182. Parse a bunch of quotes from HTML Intermediate level Let's get some inspiration. Below you find the simplified HTML …
3.10 dict regular expressions string manipulation string parsing
Bite 188. Get statistics from PyBites test code Beginner level Did you know Python has a statistics module? For this …
3.10 data analysis file processing statistics
Bite 198. Calculate my Mac's longest uptime Advanced level Given the following output, calculate the longest uptime / time …
3.10 data wrangling datetime dateutil string parsing
Bite 200. 🥳 Minecraft Enchantable Items Advanced level My kids love Minecraft and they always want me to …
3.10 beautifulsoup web scraping
Bite 201. Call a Cisco Nexus 9k device Intermediate level Cisco Nexus 9k devices is one of the first network …
3.10 networking requests
Bite 203. Type hinting practice Intermediate level It's time for some type hinting! For this bite, you …
3.10 classes dataclasses type hinting
Bite 205. Female speakers @ Pycon US Intermediate level After our Code Challenge 62 / Alicante PyDay last week, …
3.10 beautifulsoup counting data wrangling gender_guesser
Bite 208. Find the number pairs summing up N Beginner level In this Bite you complete find_number_pairs which receives a list …
3.10 itertools looping numbers
Bite 209. Write a Sphinx docstring Beginner level Your team uses Sphinx and wants you to comply with …
3.10 data types docstring sphinx
Bite 213. Code a translation fixer Advanced level Imagine you built PyBites' new translation feature. You managed to …
3.10 regular expressions
Newbie Bite 20. While loop The next challenge is to learn all about the while …
3.10 newbie while
Newbie Bite 25. Calling a function The last Bite! Let's actually use what we've created by …
3.10 functions newbie
Bite 225. Swap case PyBites characters Beginner level In this Bite you will swap case all pybites characters …
3.10 looping string manipulation string parsing
Bite 229. Scrape best programming books Advanced level For this bite, you are going to scrape the books …
3.10 beautifulsoup books classes data cleaning data wrangling sorting web scraping
Bite 242. Zodiacal data parsing Advanced level In this Bite we will write tests for a module …
3.7 datetime fixtures pytest
Bite 248. Test a number guessing game Advanced level In this Bite you test a simple number guessing game …
3.7 classes exception handling games mock.patch pytest
Bite 250. PyBites URL Shortener Advanced level URL shortening is a technique on the World Wide Web …
3.10 decode dict encode string manipulation string module type hinting
Bite 251. Introducing Pandas Series Beginner level Let's get started with Pandas! In case you are not …
3.10 pandas series string module
Bite 252. Let's play with Pandas Series Beginner level In Bite 251 we looked at creating some simple pandas …
3.10 numpy pandas series slicing type hinting
Bite 253. More Pandas Series Practice Intermediate level In Bite 251 and Bite 252 we looked at creating …
3.10 math pandas series statistics
Bite 255. Codon Usage Intermediate level The genetic code of all organisms uses a 3 base …
3.10 bioinformatics collections textwrap
Bite 256. Scrape PyCon events Intermediate level In this Bite, we want you to scrape PyCon 2019 …
3.10 beautifulsoup data analysis json namedtuple pycon requests web scraping
Bite 261. Visit all PyCons in Europe Intermediate level In Bite 256 you scraped data on 2019 PyCons. Now …
3.10 data analysis dataclasses itertools math
Bite 262. GC content Beginner level The DNA of all organsims consists of the letters (bases) …
3.10 bioinformatics collections
Bite 263. Count the number of islands in a grid Intermediate level You are tasked with counting the amount of islands in …
3.10 algorithms looping string
Bite 265. Optimal fund raising Intermediate level Here is another classic algorithm problem wrapped in a Bite. …
3.10 algorithms looping math
Bite 266. Composition, Inheritance, Abstract Base Class, what? Advanced level It’s not as bad as that sounds, really. If you …
3.10 ABCs abstractmethod beautifulsoup composition dataclasses inheritance namedtuple string formatting typing urllib web scraping
Bite 269. Taxable Income Calculator Advanced level I have no idea what rabbit hole I followed to …
3.10 classes dataclasses finance namedtuple properties typing
Bite 270. Most frequent digit in number Beginner level Given an integer number, find the most frequent digit in …
3.10 Counter counting numbers
Bite 271. Get all class names from a module Intermediate level In this Bite you will write a function to get …
3.10 inspect list comprehensions
Bite 280. Regular Expression Lookahead/Lookbehind Advanced level For this bite you are going to solve three different …
3.10 lookahead lookbehind regular expressions
Bite 288. Smallest number Beginner level Write a function that accepts a list of digits and …
3.10 numbers
Bite 290. Class Rosters Data Conversion Intermediate level You have been given a comma-delimited .csv file containing class …
3.10 csv string parsing tuple unpacking
Bite 292. Scoring matrices Advanced level Proteins fulfill important functions in all organisms and consist of …
3.10 bioinformatics enumerate looping numbers zip
Bite 297. Rename keys Advanced level The Data Processing Department was writing a script to import …
3.10 data cleaning dict iteration
Bite 300. 🥳 PTO Calculator Advanced level We've all been affected by COVID-19 in one way or …
3.10 calendar datetime exception handling looping numbers string formatting
Bite 301. Exchange rates Intermediate level In this Bite you have to provide the currency exchange …
3.10 datetime dict sorting
Bite 302. Get and write all code from a JSON file Intermediate level You are given a sample JSON file containing, among other …
3.10 filecmp file processing json string manipulation
Bite 307. SQLite3 introduction Intermediate level In this Bite, you are going to get some practice …
3.10 databases SQL sqlite3
Bite 310. Create file pairs Advanced level In this bite you will write a function that pairs …
3.10 bioinformatics files regular expressions
Bite 311. Cleaning text with pandas Intermediate level We recently published a blog post about how to approach …
3.8 data cleaning pandas TF-IDF
Bite 312. Scoring objects Intermediate level In this Bite you are going to score objects: Object …
3.10 builtins importlib keyword typing
Bite 315. More logging practice Intermediate level In this Bite you will hone your logging skills by …
3.10 exception handling logging
Bite 316. To rent or to stream movies? Intermediate level You're on a movie budget so you want to evaluate …
3.10 collections datetime dict typing
Bite 346. Getting started with the IRIS data set Intermediate level You are getting started with machine learning (ML)! Are you …
3.8 data wrangling machine learning numpy pandas scikit-learn
Bite 325. Floating point arithmetic Intermediate level This Bite introduces you to a few issues associated with …
3.10 arithmetic floats numbers rounding
Bite 327. AST visitor Advanced level In Bite 312 we learned how to identify builtin functions, …
3.10 AST
Bite 328. Longest coding streak Advanced level What is your longest streak of completed Bites? In Bite …
3.10 fromordinal itertools timezones toordinal
Bite 330. Simple Math Equation Solver Advanced level Your task is to write a simple math equation solver. …
3.10 exception handling itertools list operations math operator
Bite 331. Convolution in Neural Networks Advanced level Finally a Bite about deep learning! At least, about one …
3.10 deep learning numpy
Bite 332. Searching for an apartment Intermediate level Bill is looking for a new apartment with good view, …
3.10 algorithms
Bite 337. A little detour: Pydantic Beginner level Pydantic is an awesome library to do data validation and …
3.10 FastAPI freebie Pydantic
Bite 339. Retrieve food objects Intermediate level Now that our API can add food objects, let's retrieve …
3.10 FastAPI freebie
Bite 342. Food logging CRUD Intermediate level In this Bite you will use the Pydantic FoodEntry model …
3.10 FastAPI freebie
Bite 343. FastAPI Exception handling Intermediate level In this Bite we'll take the API we built in …
3.10 FastAPI freebie
Bite 345. FastAPI Authentication with JWT (JSON Web Tokens) Advanced level Up to this point anyone can modify food entries in …
3.10 FastAPI freebie
Bite 348. Citation indexes Intermediate level Academic research innovates by publishing papers, i.e., documents collecting ideas …
3.10 builtins exception handling typing
Bite 349. Writing better Spanish Intermediate level Bob is a lazy typer and often forgets to accentuate …
3.10 ascii dict unicode unicodedata
Bite 350. Learn to handle cron schedule expressions Advanced level Let your mind wander and tell us what you think …
3.10 crontab dataclasses datetime exception handling iteration
Bite 356. Using Typer Callbacks to Create Command Line Interface (CLI) Parameters Intermediate level In the previous Bite you have created your first simple …
3.10 command line Typer
Bite 364. Create Wikipedia Lorem Ipsum text Intermediate level Lorem Ipsum is text used to demonstrate layout in documents …
3.10 beautifulsoup list comprehensions random regular expressions requests
Bite 365. Rolling two dice for an advantage Intermediate level Let's roll the dice! When playing a game where it …
3.10 itertools math mean
Bite 367. Add Pi Day to the calendar Intermediate level Python has a brilliant but often overlooked module called calendar. …
3.10 calendar tuple unpacking
Bite 368. Hello Types Intermediate level Welcome to this type hinting learning path. In the Bites …
3.10 annotations type hinting
Bite 369. Advanced Type Hints Intermediate level In the previous Bite you have started annotating code with …
3.10 annotations type hinting
Bite 370. Getting started with vectors Intermediate level In the previous two Bites you have annotated small pieces …
3.10 annotations type hinting
Bite 372. Validate Pangram Beginner level A pangram, according to the Oxford English Dictionary, is a …
algorithms hashing string strings
Bite 373. Reverse only Letters Beginner level Given a string, reverse only the English letters (lowercase or …
queues stacks strings
Bite 375. Find all Letter Combinations of a Phone Number Intermediate level The typical phone keypad (pictured) features numbers (0 - 9), …
backtracking itertools strings
Bite 377. Coins on the Table Intermediate level You start with 1,001 pennies lined up on a table. …
math
Bite 378. Organizational Chart Advanced level Of all the types of questions you are likely to …
binary tree depth-first search graph traversal