Skip to content

antcamarasa/Python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

📘 Computer Science

Module I : Foundations of Computing (Low-Level & Memory)

  • A. Binary Representation & Number Systems

    • Binary, Bytes, and Bitwise Operators in Python (Real Python)
    • Bitwise Operators in Python (AND, OR, XOR, NOT) (Real Python)
    • Base conversion (binaire, octal, hexadécimal) – YouTube (freeCodeCamp)
    • Numbers in Python (overview des types, int/float — Real Python)
  • B. Floating Point & Numerical Precision

    • Floating-Point Representation Error (IEEE 754) (Real Python)
    • How to Round Numbers in Python (Real Python)
  • C. Text Encoding & Unicode

    • Unicode & Character Encodings in Python (A Painless Guide) (Real Python)
    • ASCII & Unicode – YouTube
  • D. Bytes, Serialization & Data Representation

    • Bytes Objects: Handling Binary Data in Python (Real Python)
    • Python’s Bytearray: A Mutable Sequence of Bytes (Real Python)
    • Serialize Your Data With Python (Real Python)
  • E. Variables, References & Memory Model

    • Variables in Python (Real Python)
    • Pass-by-Reference in Python (Real Python)
    • Python’s Mutable vs Immutable Types (Real Python)
    • Python Copy: Shallow vs Deep Copy (Real Python)
    • Python’s del: Remove References From Scopes and Containers (Real Python)
    • Memory Management in Python (Real Python)
    • Pointers in Python: What’s the Point? (Real Python)

Module II : Object-Oriented Programming

  • A. Bases & modèle objet Python

    1. Object-Oriented Programming (OOP) in Python
    2. Python Classes: The Power of Object-Oriented Programming
    3. Variables in Python: Usage and Best Practices (références/aliasing utiles en POO)
  • B. Construction & encapsulation

    1. Python Class Constructors: Control Your Object Instantiation
    2. Providing Multiple Constructors in Your Python Classes
    3. Python’s property(): Add Managed Attributes to Your Classes
    4. Getters and Setters: Manage Attributes in Python
    5. Single and Double Underscores in Python Names (API & pseudo-private)
  • C. Reuse & organisation

    1. Inheritance and Composition: A Python OOP Guide
    2. What Are Mixin Classes in Python?
    3. What Does __init__.py Do? (packages)
    4. Namespaces in Python (portées/lookup d’attributs)
  • D. Protocoles, datamodel & dunder

    1. Python’s Magic Methods: Leverage Their Power in Your Classes
    2. When Should You Use .repr() vs .str() in Python?
    3. Using Python’s .__dict__ to Work With Attributes
    4. Python Protocols: Leveraging Structural Subtyping (design orienté comportements)
  • E. Qualité & design

    1. SOLID Principles: Improve Object-Oriented Design in Python
    2. Python’s Assignment Operator: Write Robust Assignments (effets de bord en POO)

Module III : Core Data Structures & Algorithmic Thinking

  • A. Panorama & bases

    1. Basic Data Types in Python: A Quick Exploration (Udemy – types numériques)
    2. Python Sequences: A Comprehensive Guide (pré-requis types + OOP)
    3. Python Mappings: A Comprehensive Guide (pré-requis types + OOP)
  • B. Listes & tuples (séquences)

    1. Python’s list Data Type: A Deep Dive With Examples
    2. Lists vs Tuples in Python
    3. How to Use sorted() and .sort() in Python
    4. How to Split a Python List or Iterable Into Chunks
    5. How to Flatten a List of Lists in Python
    6. How to Remove Items From Lists in Python
    7. Python enumerate(): Simplify Loops That Need Counters
    8. Using the len() Function in Python
    9. Why Are Membership Tests So Fast for range() in Python?
  • C. Dictionnaires (mappings)

    • 1. Dictionaries in Python
    • How to Iterate Through a Dictionary in Python
    • Sorting a Python Dictionary: Values, Keys, and More
  • D. Ensembles (sets) & variantes légères

    1. Sets in Python
    2. Python Set Comprehensions: How and When to Use Them
    3. Write Pythonic and Clean Code With namedtuple
    4. Build Enumerations of Constants With Python’s Enum
  • E. Chaînes & données binaires

    1. Strings and Character Data in Python
    2. How to Split a String in Python
    3. How to Join Strings in Python
    4. Efficient String Concatenation in Python
    5. How to Strip Characters From a Python String
    6. How to Replace a String in Python
    7. Bytes Objects: Handling Binary Data in Python
    8. Python’s Bytearray: A Mutable Sequence of Bytes
    9. Python’s Array: Working With Numeric Data Efficiently
  • F. Itération & outils “batteries incluses”

    1. Iterators and Iterables in Python: Run Efficient Iterations
    2. Using the Python zip() Function for Parallel Iteration
    3. Python range(): Represent Numerical Ranges
    4. Python’s in and not in Operators: Check for Membership
  • G. Mutabilité, copies & sécurité

    1. Python’s Mutable vs Immutable Types: What’s the Difference?
    2. How to Copy Objects in Python: Shallow vs Deep Copy Explained

Module IV : Functional Programming

  • A. Fondamentaux : Definition & Execution

    • Defining Your Own Python Function
    • Positional-Only and Keyword-Only Parameters in Python
    • What Are Python Asterisk and Slash Special Parameters For?
  • B. Variables & portées

    • Python Scope & the LEGB Rule: Resolving Names in Your Code
    • Namespace in Python
    • The Python Global Keyword: Global Scope Beyond Functions
    • Using and Creating Global Variables in Your Python Functions
  • C. Valeurs de retour, packing/unpacking & protocoles utiles

    • Using the Python zip() Function for Parallel Iteration
    • Python enumerate(): Simplify Loops That Need Counters
    • How to Use sorted() and .sort() in Python
    • Using the len() Function in Python
    • What Does isinstance() Do in Python?
  • D. Fonctions d’ordre supérieur

    • Functions Are First-Class Citizens in Python
    • Functional Programming in Python: When and How to Use It
    • Python’s Built-in Functions: A Complete Exploration
    • Iterators and Iterables in Python: Run Efficient Iterations
  • E. Fonctions anonymes, closures et décorateurs

    • Python Lambda Functions: How to Use Them Effectively
    • Python Closures: How to Use Them
    • How to Define and Use Python Decorators
  • F. Récursion

    • Recursion in Python: An Introduction
    • Recursion Examples and Common Problems
    • Tail Recursion in Python: The Why and How
  • G. Décorateurs

    • Primer on Python Decorators
    • Python Timer Functions: Three Ways to Monitor Your Code
  • H. Générateurs, itérateurs & flux paresseux

    • Iterators and Iterables in Python: Run Efficient Iterations
    • Asynchronous Iterators and Iterables in Python
  • I. Fonctions asynchrones : async def, await & coroutines

    • Python’s asyncio: A Hands-On Walkthrough
    • Speed Up Your Python Program With Concurrency

Module V : Advanced Data Structures

  • A. Introduction : structures et complexité

    1. Big O Notation in Python: A Complete Guide
    2. Common Python Data Structures
  • B. Stack & Queue

    1. Python Stacks and Queues: A Step-by-Step Guide
    2. Python Stacks, Queues, and Priority Queues in Practice
    3. Working With collections.deque
  • C. Linked Lists

    1. Python Linked Lists: Insert, Remove, Traverse, Reverse
    2. Build a Linked List Class From Scratch in Python
  • D. Trees

    • Binary Trees in Python: Traversal, Insertion, and Search
    • Implementing a Binary Search Tree (BST) in Python
    • Tree Traversal Algorithms in Python: Preorder, Inorder, Postorder
  • E. Graphs

    • Graphs in Python: Representation and Algorithms
    • Build a Maze Solver in Python Using Graphs (projet complet)
    • Depth-First Search (DFS) and Breadth-First Search (BFS) in Python
  • F. Hashmaps (dictionnaires internes)

    • How Hash Tables Work in Python (and Beyond)
    • Python Dictionaries Under the Hood
    • Custom Python Dictionaries: Inheriting From dict vs UserDict
    • Implement hashmap using TDD
  • G. Heaps & Priority Queues

    • Heaps in Python: Introduction to heapq
    • Priority Queues and Scheduling With heapq

About

Learn Dictionnary

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages