Skip to main content
Ctrl+K
thinkpy - Home

Part I: Fundamentals

  • 1. Introduction
    • 1.1. On Programming
    • 1.2. Python Basic Syntax
  • 2. Syntax and Types
    • 2.1. Variables
    • 2.2. Python Operators
    • 2.3. Built-in Types and Functions
      • 2.3.7. Built-in Functions
      • 2.3.8. Basic Types
      • 2.3.9. Collection Types
  • 3. Control Flow
    • 3.1. Conditionals
    • 3.2. Iteration
  • 4. Functions
    • 4.1. Defining Functions
    • 4.2. Function Design
    • 4.3. Recursion
  • 5. Exceptions & Testing
    • 5.1. Exceptions
    • 5.2. Unit Testing

Part II: Data Structures

  • 6. Lists
    • 6.1. Creating Lists
    • 6.2. Accessing Lists
    • 6.3. List Operations
    • 6.4. Aliasing & Copying
    • 6.5. Advanced Lists
  • 7. Tuples
    • 7.1. Creating & Accessing
    • 7.2. Tuple Unpacking
    • 7.3. Tuple Operations
    • 7.4. Tuples & Functions
  • 8. Dictionaries & Sets
    • 8.1. Dictionaries
      • 8.1.4. Core Operations
      • 8.1.5. Select Topics
    • 8.2. Sets
      • 8.2.5. Creating Sets
      • 8.2.6. Set Operations
      • 8.2.7. Set Methods
      • 8.2.8. Advanced Sets
  • 9. Strings
    • 9.1. Strings
      • 9.1.1. String Basics
      • 9.1.2. String Methods
      • 9.1.3. String Comparison
      • 9.1.4. Looping & Sorting
      • 9.1.5. Word List
    • 9.2. Regex
      • 9.2.3. The re Module
      • 9.2.4. Regex Syntax
      • 9.2.5. Advanced Regex
      • 9.2.6. Applications
    • 9.3. Text Analysis
      • 9.3.2. Cleaning Text
      • 9.3.3. Word Frequencies
      • 9.3.4. Random Text
      • 9.3.5. Markov Generation

Part III: Program Design

  • 10. OOP
    • 10.1. OOP Basics
    • 10.2. The Four Pillars
    • 10.3. Advanced OOP
  • 11. FP
    • 11.1. Functional Concepts
    • 11.2. Functional Practice
  • 12. Iterators & Generators
    • 12.1. Iterators
    • 12.2. Generators
  • 13. APIs
    • 13.1. API Basics
    • 13.2. API Reliability

Part IV: DSA

  • 14. Abstract Data Structures
    • 14.1. ADT Basics
    • 14.2. Stacks & Queues
    • 14.3. Trees & Graphs
    • 14.4. Assignments
  • 15. Algorithms
    • 15.1.1. Algorithms
    • 15.1.2. Searching
    • 15.1.3. Sorting

Appendices

  • Work Environment
  • Modules, Files, and Packaging
    • File Management
    • Modules
    • Packaging
    • Coding Patterns and Idioms
  • Jupyter
    • Python installation
    • Virtual Environment
    • Jupyter Notebook
    • Jupyter Bonus
  • Bibliography
  • Repository
  • Open issue

Index

A | E | K | S

A

  • argument

E

  • expression

K

  • keywords, [1]

S

  • statement

By Tsangyao Chen

© Copyright 2026.