The Modern Python Challenge

Video description

Python is one of the most popular and widely used programming languages in a variety of fields such as data science, analysis, gaming, GUI programming, Networking, and more. Are you someone who loves challenges and gets excited about solving them? If you've been using Python for some time and would like to test how good a Python wrangler you are, you've come to the right place!

In this course, you will uncover key Python features and implement them while testing your own ability to solve particular challenges. Each unique problem will not only test your knowledge of the language, but also your ability to think outside of the box and come up with the best solutions.

Our course is divided into levels to help you go from being a beginner to professional level “Pythonista”! And in case you're stumped, you don't have to worry: we'll show you the best solutions to the challenges laid out in the course.

By the end of this course, you will become a confident “Python Pro”, ready to take up any challenge and solve it with your mastery. So, are you up for the challenge?

What You Will Learn

  • Develop a robust understanding of Python’s modules and data structures
  • Handle databases and various data formats such as XML, JSON, CSV and SQLite
  • Improve your skills working with strings and regular expressions
  • Parse datetimes and timezones Python s module with an emphasis on timezone-related functions
  • Explore and extract insights from the web
  • Discover core concepts of network communication and Python networking
  • Build data scraping tools you can keep hold of, and explore Python libraries like beautifulsoup4 to pull requests easily
  • Explore the world of Design Patterns to expand and enhance your “Python Pro” skills
  • Cover core concepts of network communication, use TCP sockets to create client and server network applications.


This course will appeal to Python developers who are interested in solving real-world programming problems.

This course has challenges for Python developers and aspiring “Python Pros” of all levels.

About The Author

Matthew Macarty: Matthew Macarty has taught graduate and undergraduate business school students for over 15 years and currently teaches at Bentley University. He has taught courses in statistics, quantitative methods, information systems and database design.

Publisher resources

Download Example Code

Table of contents

  1. Chapter 1 : Implement Data Structures Using the Collections Module
    1. Course Overview
    2. namedtuple
    3. Deque
    4. Defaultdict
    5. Counter
    6. Setting up a character index application
    7. Completing the Character Index
  2. Chapter 2 : Data Analysis with Pandas
    1. Analyzing Car Data
    2. Finding the Most Common Word
    3. Reading Data Files
    4. Movie Data Analysis
    5. Downloading and Transforming Data
    6. Filtering Data
  3. Chapter 3 : Handling Various Data Formats and Databases
    1. Using ElementTree to Parse XML
    2. Converting Dict to namedtuple/JSON
    3. Parsing a CSV File and Creating a Bar Chart
    4. Using the IPinfo API to Lookup IP Country
    5. Turning Messy CSV into JSON
    6. Working with Relational Databases
    7. Analyzing NBA Data with SQLite3
  4. Chapter 4 : Working with Dates and Time Zones
    1. Date and Time Module Overview
    2. Formatting Dates Intermediate Level
    3. Parsing and Converting
    4. Working Between Time Zones
    5. Humanizing a Date and Time
    6. Calculating Time
    7. Finding a Holiday Date
  5. Chapter 5 : Decorators and Context Managers
    1. Introducing the Python Decorator
    2. Writing a Decorator with Arguments
    3. Writing a login_required Decorator
    4. Writing a Number Validation Decorator Advanced Level
    5. Writing a Context Manager
    6. Writing a Retry Decorator
  6. Chapter 6 : Working with Itertools Module
    1. Fix a Truncating Zip Function with zip_longest
    2. Calculating the Running Average of a Sequence
    3. Finding the Number Pairs Summing Up X
    4. Finding Combinations
    5. Finding Words from the English Language
    6. Grouping Data
  7. Chapter 7 : Fundamental Concepts in Object-Oriented Programming in Python
    1. Making a Class and Property
    2. Representation Methods
    3. Saving the Object Class
    4. Subclassing with dict
    5. Inheritance
    6. Advanced Properties
  8. Chapter 8 : Writing Regular Expressions in Python
    1. Overview of Regular Expressions Beginner Level
    2. Extracting Digits Out of a String Intermediate Level
    3. Replacing Characters in a String
    4. Finding Quotes and Extracting Them from a Text Advanced Level
    5. Validating Password
    6. Replacing Repeated Words
  9. Chapter 9 : Working with Strings in Python
    1. Slicing Strings Beginner Level
    2. Rotating String Characters
    3. Replacing Characters
    4. Removing Punctuation Characters from a Longer String
    5. Converting Hexadecimal Numbers to RGB Intermediate Level
    6. Check If Two Strings Are Anagrams
  10. Chapter 10 : Web Scraping with Python
    1. Introduction to Beautiful Soup Intermediate Level
    2. Viewing Source Code
    3. Extracting Hyperlinks from the Source Code
    4. Get List of the Most Recommended Books
    5. Scraping and Cleaning
    6. Editing Webpages
  11. Chapter 11 : Design Patterns
    1. Implementing Factory Method
    2. Creating HTML Page with Abstract Factory Pattern
    3. Implementing Singleton Pattern
    4. Implementing Builder Pattern
    5. Implementing Object Pool Pattern
  12. Chapter 12 : Network Programming with Python
    1. Writing a Basic Server
    2. Write Client
    3. Socket Functions
    4. Downloading an Image
    5. Network Discovery

Product information

  • Title: The Modern Python Challenge
  • Author(s): Matthew Macarty
  • Release date: May 2020
  • Publisher(s): Packt Publishing
  • ISBN: 9781839219238