Get Good at Python — A Complete Repository Breakdown and Learning Roadmap

A complete walkthrough of the Get-Good-at-Python GitHub repository with a detailed index of every folder and file, explained for learners from beginners to intermediate Python programmers.

12/31/2025

Learn Python with hands-on code, structured modules, and real examples from the Get-Good-at-Python GitHub repository.

Python is one of the most versatile and widely used programming languages in the world. Whether you are beginning your journey into coding or building practical automation and data solutions, a solid understanding of Python fundamentals and intermediate techniques is essential. To help you learn Python the right way—through practice and real code—I have created the Get-Good-at-Python repository on GitHub.

Below, I provide a complete index of every file and folder in the repository along with concise introductions so you know exactly what each part covers and how it contributes to your learning path.

About the Repository

The Get-Good-at-Python repository is organised into clear thematic modules that gradually take you from basic scripting to applied Python for networking and data manipulation tasks. It is suitable for learners who want to practise Python using real scripts and understand how to build useful Python programmes from scratch.

You can view the repository on GitHub here:

https://github.com/vsang181/Get-Good-at-Python/tree/main

Get-Good-at-Python
  1. Python Scripting Basics

    1. Variables, Slicing and Type Casting

      1. Checking the Installed Python Version

      2. Write first python script

      3. Setting Variables

      4. Data Types

      5. Strings and Slicing

      6. Integers

      7. Floats

      8. Booleans

      9. Type Casting

    2. Lists and Dictionaries

      1. Python Lists

      2. Python Dictionaries

    3. Loops, Logic and User Input

      1. Loops

      2. Conditional Statements

      3. User Input

    4. Files and Functions

      1. Working with Files

      2. Python Functions

      3. Combining File Operations in a Function

    5. Modules and Web Requests

      1. Importing a Module

      2. Web Requests

    6. Python Network Sockets

      1. Creating a Python Socket Client

    7. Putting It All Together

      1. Writing Programs in Pseudocode

      2. Creating a Program Flowchart

      3. Creating the Spider

  2. Network Scripting

    1. Write a client program with Python — Part I

      1. Buidling a Basic Client

      2. Socket Methods

    2. Write a client program with Python — Part II

      1. Error handling: try and except Clauses

      2. Handling Unknown Data Size

      3. Interactive Sockets

    3. Write a server program with Python

      1. Building a Basic Server

      2. Testing our Client and Server

    4. Write a port scanner with Python

      1. Using the socket module to create a basic port scanner

      2. Port Knocking

    5. Website interaction with Python — Part I

      1. Understanding the Transport Layer: Using the Python socket Module with HTTP

      2. Working at the Application Layer: Making HTTP GET Requests with Python

      3. Parsing HTML Content Programmatically

    6. Website interaction with Python — Part II

      1. POST Requests and Parameters with Python

      2. Request Headers and Non-Text-Based Content

    7. Capture and send packets with Scapy

      1. Introduction to Scapy

      2. Scapy Commands

      3. Capturing Packets with Scapy

      4. Saving Packets with Scapy

      5. Methods for Sending and Receiving Packets with Scapy

      6. Sending a Packet with Scapy

      7. Sending and Receiving a Response from Scapy

  3. Data Manipulation in Python

    1. Python Data Basics

      1. Working with Strings

      2. Working with Integers

      3. Working with Floating-Point Numbers

      4. Exploring Complex Numbers

      5. Working with Booleans

      6. Understanding Python Bytes

    2. Sets, Lists and Dictionaries

      1. Manipulating Sets

      2. Working with Lists

      3. Exploring Tuples

      4. Using Dictionaries

    3. Different Base representations

      1. Manipulating Binary Values

      2. Octal Numbers

      3. Hexadecimal Numbers

    4. Converting and Displaying Data Types

      1. Introducing Conversions

      2. Converting Integers

      3. Converting Bytes

      4. Converting Characters

      5. String to hexadecimal String

    5. Manipulating Binary large Objects in Python

      1. Arrays of Bytes and Byte Arrays

      2. Managing BLOBs as Bytes

    6. User-Defined Data Structures

      1. Building stacks of data

      2. Doubling up on our lists

      3. Creating graph structures

      4. Growing trees in Python

      5. Working with FIFO queues

    7. Data Structures as records

      1. Working with Data Records

      2. Working with Databases

      3. Working with JSON and XML

Conclusion

The Get-Good-at-Python repository is more than just code—it is a structured roadmap that takes you from basic programming concepts to practical, real-world applications of Python. Whether you are starting with your very first Python script or building automation and data tools, this resource will help you learn by doing.

Explore the repo, practice the code, and tailor the examples for your use cases. Python is best learned through iteration and experimentation—so start building today!