Python#
- 1. Python Basics
- 1.1. Python
- 1.2. Printing
- 1.3. Variables
- 1.4. Types of Variables
- 1.5. Python as a calculator
- 1.6. Naming Variables
- 1.7. Don’t Mix and Match Variables Types
- 1.8. Type Conversions
- 1.9. Input
- 1.10. String Formatting
- 1.11. Error Messages
- 1.12. Comments
- 1.13. Test Your Understanding
- 1.14. Additional Challenges
- 2. Conditionals
- 3. Lists and Loops
- 3.1. Lists
- 3.2. Indexing
- 3.3. List Operations
- 3.4. List Joins
- 3.5. Converting To Lists
- 3.6. Loops
- 3.7. While Loops
- 3.8. Common While Loop Errors
- 3.9. While Loops With Lists
- 3.10. While Loops With Input
- 3.11. While Loops With Conditionals
- 3.12. For Loops
- 3.13. Range
- 3.14. For Loops With Conditionals
- 3.15. Equivalent Loops
- 3.16. Nested Loops
- 3.17. Pseudocode
- 3.18. Additional Challenges
- 4. Modules and Functions
- 4.1. Modules
- 4.2. The Math Module
- 4.3. Random Integers
- 4.4. Random Floats and Using Probabilities
- 4.5. Pseudorandomness
- 4.6. Time
- 4.7.
datetime
- 4.8. Functions
- 4.9. Function Scope
- 4.10. Optional Parameters (Keyword Arguments)
- 4.11. Function Returns
- 4.12. Custom Modules
- 4.13. Representing Numbers in Binary
- 4.14. Two’s Complement
- 4.15. The Hexadecimal System
- 4.16. ASCII
- 4.17. Pseudocode and Flowcharts
- 5. Data Structures
- 6. Algorithms and Code Design
- 6.1. Algorithms
- 6.2. Draw a Box: Algorithm
- 6.3. Desk Checking
- 6.4. Draw a Box: Desk Check
- 6.5. Draw a Box: Code
- 6.6. Backtracking Algorithms: Maze Example
- 6.7. Backtracking Algorithms: 8 Queens
- 6.8. Representing and Storing Data: 8 Queens
- 6.9. Divide and Conquer: Merge Sort
- 6.10. Applying Divide and Conquer Algorithms
- 6.11. Understanding Algorithms
- 6.12. Peer Review: Tic Tac Toe (Naughts and Crosses)
- 6.13. Developing Software: Tic Tac Toe Example
- 6.14. Top-down and Bottom-up Design
- 6.15. Structure Charts
- 6.16. Online Code and Collaboration Tools
- 6.17. Waterfall vs Agile Project Management