In English:
Repo with my solutions of Python Exercises (Bites of Py) from site https://codechalleng.es/bites/.
По-русски:
Репозиторий с моими решениями задач на Python (Bites of Py) с сайта https://codechalleng.es/bites/.
List of PyBites:
Done | Name (link in repo) | On PyBites | Level | Tags |
---|---|---|---|---|
✔️ | 1. Sum n numbers | (click) | Beginner | default args, None, range, sum |
✔️ | 2. Regex Fun | (click) | Advanced | findall, re, regular expressions |
✔️ | 3. Word Values | (click) | Intermediate | max, Scrabble, sum |
✔️ | 4. Top 10 PyBites tags | (click) | Intermediate | Counter, findall, regular expressions |
✔️ | 5. Parse a list of names | (click) | Beginner | lambda, list comprehensions, min, sorting |
✔️ | 6. PyBites Die Hard | (click) | Intermediate | Counter, file processing, generators, namedtuple |
✔️ | 7. Parsing dates from logs | (click) | Intermediate | datetime, file processing |
✔️ | 8. Rotate string characters | (click) | Beginner | deque, slicing |
✔️ | 9. Palindromes | (click) | Intermediate | list comprehensions, max, reverse |
✔️ | 10. Practice exceptions | (click) | Intermediate | exception handling, raise |
✔️ | 11. Enrich a class with dunder methods | (click) | Advanced | dunder methods, properties |
✔️ | 12. Write a user validation function | (click) | Intermediate | classes, exception handling, namedtuple |
✔️ | 13. Convert dict to namedtuple/json | (click) | Intermediate | dict, json, namedtuple |
✔️ | 14. Generate a table of n sequences | (click) | Intermediate | generators, zip |
✔️ | 15. Enumerate 2 sequences | (click) | Beginner | enumerate, string formatting |
✔️ | 16. PyBites date generator | (click) | Beginner | datetime, generators |
✔️ | 17. Form teams from a group of friends | (click) | Intermediate | itertools |
✔️ | 18. Find the most common word | (click) | Intermediate | Counter, data analysis, list comprehensions |
✔️ | 19. Write a simple property | (click) | Beginner | datetime, properties |
✔️ | 21. Query a nested data structure | (click) | Beginner | data structures, dictionary comprehensions, list comprehensions, sorting |
✔️ | 22. Write a decorator with argument | (click) | Intermediate | decorators |
✔️ | 25. No promo twice, keep state in a class | (click) | Intermediate | classes, exception handling, properties |
✔️ | 26. Dictionary comprehensions are awesome | (click) | Beginner | dictionary comprehensions |
✔️ | 27. Parse omdb movie json data | (click) | Intermediate | APIs, glob, json, movie data |
✔️ | 28. Converting date strings to datetimes | (click) | Intermediate | Counter, datetime, findall |
✔️ | 29. Martin's IQ test | (click) | Beginner | enumerate, string module |
✔️ | 30. Movie data analysis | (click) | Intermediate | data analysis, defaultdict, mean, movie data, namedtuple, sorting |
✔️ | 32. Don't let mutability fool you | (click) | Beginner | deepcopy, mutability |
✔️ | 33. Transpose a data structure | (click) | Intermediate | dict, zip |
✔️ | 37. Rewrite a for loop using recursion | (click) | Beginner | recursion, reverse |
✔️ | 38. Using ElementTree to parse XML | (click) | Beginner | movie data, xml |
✔️ | 39. Calculate the total duration of a course | (click) | Intermediate | datetime, findall, numbers, timedelta |
✔️ | 40. Write a binary search algorithm | (click) | Advanced | algorithms, binary search |
✔️ | 43. Force keyword arguments | (click) | Beginner | function arguments, kwargs |
✔️ | 44. License key generator | (click) | Beginner | list comprehensions, secrets, string module |
✔️ | 45. Keep a queue of last n items | (click) | Beginner | deque |
✔️ | 46. You are a programmer! Code Fizz Buzz | (click) | Beginner | fizzbuzz |
✔️ | 47. Write a new password field validator | (click) | Intermediate | re, string module |
✔️ | 48. Make a bar chart of new Safari books | (click) | Intermediate | bar chart, data analysis |
✔️ | 49. Scrape Packt's html with BeautifulSoup | (click) | Intermediate | beautifulsoup, namedtuple, requests |
✔️ | 50. Make a little PyBites search engine (feedparser) | (click) | Advanced | any, feedparser, list comprehensions, namedtuple, search |
✔️ | 51. When does Python 2 die on Planet Miller? | (click) | Intermediate | datetime |
✔️ | 52. Create a movie quote API with Flask | (click) | Advanced | APIs, Flask, movie data |
✔️ | 54. Nicer formatting of a poem or text | (click) | Beginner | string manipulation, textwrap |
✔️ | 55. Get the latest game releases from Steam's RSS feed | (click) | Beginner | feedparser, namedtuple |
✔️ | 56. Add a command line interface to our BMI calculator | (click) | Beginner | argparse |
✔️ | 57. Create a simple calculator that receives command line arguments | (click) | Intermediate | argparse, functools, reduce |
✔️ | 63. Use an infinite iterator to simulate a traffic light | (click) | Advanced | iterators, itertools, namedtuple |
✔️ | 64. Fix a truncating zip function | (click) | Beginner | itertools, zip |
✔️ | 66. Calculate the running average of a sequence | (click) | Beginner | enumerate, mean |
✔️ | 67. Working with datetimes | (click) | Beginner | datetime, timedelta |
✔️ | 68. Remove punctuation characters from a string | (click) | Beginner | string manipulation, string module |
✔️ | 69. Regex Fun - part II | (click) | Advanced | re, regular expressions |
✔️ | 71. Keep state in a class + make its instance callable | (click) | Intermediate | classes, dunder methods |
✔️ | 74. What day of the week were you born on? | (click) | Beginner | calendar |
✔️ | 75. Parse Unix cal to a weekday mapping | (click) | Advanced | re, Unix, zip |
✔️ | 77. New places to travel to | (click) | Beginner | set, set operations |
✔️ | 79. Parse a csv file and create a bar chart | (click) | Intermediate | bar chart, community, csv, requests |
✔️ | 80. Check equality of two lists | (click) | Beginner | enum, equality, list |
✔️ | 82. Define a Score Enum and customize it adding methods | (click) | Intermediate | classmethod, enum, str |
✔️ | 86. Create a RGB-to-Hex converter | (click) | Intermediate | string formatting |
✔️ | 89. Playing with lists and dicts | (click) | Intermediate | data structures, dict, list |
✔️ | 91. Matching multiple strings | (click) | Beginner | all, any, string matching |
✔️ | 94. Parse PyCon talk data from YouTube | (click) | Advanced | list comprehensions, max, namedtuple |
✔️ | 95. Subclass the dict built-in | (click) | Intermediate | classes, inheritance |
✔️ | 97. BeautifulSoup II - scrape US holidays | (click) | Intermediate | beautifulsoup, defaultdict, dict |
✔️ | 99. Write an infinite sequence generator | (click) | Intermediate | generators, itertools, string module, zip |
✔️ | 100. Display the last part of a file (Unix tail) | (click) | Beginner | file processing, slicing, strip, Unix |
✔️ | 101. f-strings and a simple if/else | (click) | Intro | f-strings, if/else |
✔️ | 102. Infinite loop, input, continue and break | (click) | Intro | break, continue, input, mock.patch, while |
✔️ | 103. Loop through a dictionary and pluralise a word | (click) | Intro | dict, looping |
✔️ | 104. Split and join | (click) | Intro | join, split |
✔️ | 105. Slice and dice | (click) | Intro | replace, slicing, split, string module, strip |
✔️ | 106. Strip out vowels and count the number of replacements | (click) | Intro | counting, regular expressions, replace, string manipulation, Zen of Python |
✔️ | 107. Filter numbers with a list comprehension | (click) | Intro | list comprehensions, modulo |
✔️ | 108. Loop over a dict of namedtuples calculating a total score | (click) | Intro | counting, dict, namedtuple |
✔️ | 109. Workout dict lookups and raising an exception | (click) | Intro | dict, exception handling, format, string manipulation, ternary |
✔️ | 110. Type conversion and exception handling | (click) | Intro | exception handling, raise, type casting |
✔️ | 115. Count leading spaces | (click) | Beginner | counting, string matching |
✔️ | 116. List and filter files in a directory | (click) | Intermediate | generators, glob, os module |
✔️ | 120. Write a numbers validation decorator | (click) | Intermediate | decorators |
✔️ | 122. Check if two words are anagrams | (click) | Intermediate | anagram, string matching |
✔️ | 125. Get the most recommended books | (click) | Intermediate | beautifulsoup, Counter, default args, list comprehensions, requests |
✔️ | 128. Work with datetime's strptime and strftime | (click) | Beginner | datetime, strftime, strptime |
✔️ | 130. Analyze some basic Car Data | (click) | Beginner | Counter, data analysis, list comprehensions, set |
✔️ | 133. Convert an Amazon URL into an affiliation link | (click) | Beginner | regular expressions, string manipulation |
✔️ | 134. Two Sums | (click) | Advanced | index, looping, sorting, sum |
✔️ | 138. OOP fun at the Zoo | (click) | Intermediate | classes, classmethod, itertools, str |
✔️ | 139. Calculate a coding streak in days | (click) | Advanced | datetime, string manipulation, timedelta |
✔️ | 140. PyBites First Pandas Bite | (click) | Intermediate | csv, data analysis, pandas |
✔️ | 143. Look up a value in 3 dictionaries | (click) | Beginner | collections, dict |
✔️ | 145. Record Breakers | (click) | Advanced | csv, data analysis, pandas |
✔️ | 147. 100 WEEKDays of Code Date Range | (click) | Intermediate | datetime, dateutil |
✔️ | 149. Sorting words with constraint | (click) | Beginner | lambda, sorting, string manipulation |
✔️ | 150. Turn messy CSV into JSON | (click) | Intermediate | csv, json, pandas, re, string manipulation |
✔️ | 153. Round a sequence of numbers | (click) | Beginner | list comprehensions, math, rounding |
✔️ | 155. Split a string by spaces or quoted text | (click) | Intermediate | split, string manipulation |
✔️ | 156. Make an index of story characters | (click) | Intermediate | collections, defaultdict, enumerate, sorting, string matching |
✔️ | 161. Count the number of files and directories | (click) | Beginner | counting, directories, files, os module |
✔️ | 163. Which packages were upgraded? | (click) | Intermediate | comparison, dict, numbers, string manipulation |
✔️ | 165. Parse an /etc/passwd file output | (click) | Beginner | split, string manipulation, tuple unpacking |
✔️ | 167. Complete a User class: properties and representation dunder methods | (click) | Beginner | classes, dunder methods, f-strings, properties, repr, str, string manipulation |
✔️ | 169. Simple length converter | (click) | Beginner | exception handling, numbers, rounding |
✔️ | 176. Create a variable length chessboard | (click) | Beginner | modulo, range, stdout |
✔️ | 179. Strip comments from Python code | (click) | Advanced | comments, regular expressions, string parsing |
✔️ | 180. Group names by country | (click) | Beginner | collections, defaultdict, groupby |
✔️ | 188. Get statistics from PyBites test code | (click) | Beginner | data analysis, file processing, statistics |
✔️ | 189. Filter a list of names | (click) | Beginner | break, continue, generators, looping |
✔️ | 190. Parse income distribution from Latin America XML | (click) | Intermediate | data analysis, defaultdict, xml |
✔️ | 193. Most upvoted StackOverflow Python questions | (click) | Intermediate | beautifulsoup, requests, sorting, string matching, web scraping |
✔️ | 195. Analyze NBA Data with sqlite3 | (click) | Intermediate | data analysis, SQL, sqlite3 |
✔️ | 197. What date is Mother's Day celebrated? | (click) | Intermediate | datetime, dateutil |
✔️ | 205. Female speakers @ Pycon US | (click) | Intermediate | beautifulsoup, counting, data wrangling, gender_guesser |
✔️ | 208. Find the number pairs summing up N | (click) | Beginner | itertools, looping, numbers |
✔️ | 214. A countdown generator | (click) | Beginner | generators |
✔️ | 215. Validate a license key | (click) | Beginner | bool, regular expressions |
✔️ | 218. Create a sandwich decorator | (click) | Beginner | decorators |
✔️ | 219. Bite notification planner | (click) | Intermediate | datetime, generators |
✔️ | 224. Get sentences from a text | (click) | Advanced | data wrangling, regular expressions, string manipulation |
✔️ | 225. Swap case PyBites characters | (click) | Beginner | looping, string manipulation, string parsing |
✔️ | 226. Get top titles from news.python.sc | (click) | Intermediate | beautifulsoup, namedtuple, news, requests, sorting, string parsing, web scraping |
✔️ | 238. Write tests for Fibonacci | (click) | Beginner | fibonacci, pytest |
✔️ | 239. Test FizzBuzz | (click) | Intermediate | fizzbuzz, pytest |
✔️ | 240. Write tests for an Account class | (click) | Advanced | classes, pytest |
✔️ | 241. Write tests for list_to_decimal | (click) | Beginner | exception handling, pytest |
✔️ | 246. Test print / standard output | (click) | Beginner | capfd, capsys, list comprehensions, pytest, stdout |
✔️ | 251. Introducing Pandas Series | (click) | Beginner | pandas, series, string module |
✔️ | 252. Let's play with Pandas Series | (click) | Beginner | numpy, pandas, series, slicing, type hinting |
✔️ | 254. Global vs local variables | (click) | Beginner | global, sum |
✔️ | 256. Scrape PyCon events | (click) | Intermediate | beautifulsoup, data analysis, json, namedtuple, pycon, requests, web scraping |
✔️ | 257. Extract users dict from a multiline string | (click) | Beginner | dict, string parsing |
✔️ | 259. Reverse complement | (click) | Intermediate | bioinformatics, string manipulation, translate |
✔️ | 262. GC content | (click) | Beginner | bioinformatics, collections |
✔️ | 267. Measure the size of an island | (click) | Intermediate | algorithms, looping, math |
✔️ | 270. Most frequent digit in number | (click) | Beginner | Counter, counting, numbers |
✔️ | 272. Find common words | (click) | Intermediate | algorithms, set operations, string matching |
✔️ | 275. Get the most common email domains | (click) | Intermediate | Counter, requests, set, string parsing, web scraping |
✔️ | 278. Major and minor numbers | (click) | Beginner | collections, max, min, numbers |
✔️ | 279. Armstrong numbers | (click) | Beginner | algorithms, numbers |
281. Generating sales reports from Github data | (click) | Advanced | data analysis, pandas | |
✔️ | 283. Like there's no tomorrow? | (click) | Beginner | datetime |
✔️ | 288. Smallest number | (click) | Beginner | numbers |
✔️ | 289. Round to next number | (click) | Beginner | math |
✔️ | 293. N digit numbers | (click) | Beginner | numbers |
✔️ | 295. Join lists | (click) | Beginner | iteration, joining, list |
✔️ | 297. Rename keys | (click) | Advanced | data cleaning, dict, iteration |
✔️ | 299. Base converter | (click) | Intermediate | base, exception handling |
✔️ | 301. Exchange Rates | (click) | Intermediate | datetime, dict, sorting |
✔️ | 305. Split once, delimit many | (click) | Intermediate | looping, split, string parsing |
✔️ | 314. Print names to columns | (click) | Beginner | f-strings, modulo, print |
✔️ | 317. Pickling objects | (click) | Beginner | data wrangling, pickle, serialization |
✔️ | 322. Reading progress | (click) | Beginner | datetime, numbers |
✔️ | 324. Pretty string | (click) | Beginner | pprint |