Books & Videos

Table of Contents

  1. Python Programming Basics

    1. Chapter 1 Python Basics

      1. Entering Expressions into the Interactive Shell
      2. The Integer, Floating-Point, and String Data Types
      3. String Concatenation and Replication
      4. Storing Values in Variables
      5. Your First Program
      6. Dissecting Your Program
      7. Summary
      8. Practice Questions
    2. Chapter 2 Flow Control

      1. Boolean Values
      2. Comparison Operators
      3. Boolean Operators
      4. Mixing Boolean and Comparison Operators
      5. Elements of Flow Control
      6. Program Execution
      7. Flow Control Statements
      8. Importing Modules
      9. Ending a Program Early with sys.exit()
      10. Summary
      11. Practice Questions
    3. Chapter 3 Functions

      1. def Statements with Parameters
      2. Return Values and return Statements
      3. The None Value
      4. Keyword Arguments and print()
      5. Local and Global Scope
      6. The global Statement
      7. Exception Handling
      8. A Short Program: Guess the Number
      9. Summary
      10. Practice Questions
      11. Practice Projects
    4. Chapter 4 Lists

      1. The List Data Type
      2. Working with Lists
      3. Augmented Assignment Operators
      4. Methods
      5. Example Program: Magic 8 Ball with a List
      6. List-like Types: Strings and Tuples
      7. References
      8. Summary
      9. Practice Questions
      10. Practice Projects
    5. Chapter 5 Dictionaries and Structuring Data

      1. The Dictionary Data Type
      2. Pretty Printing
      3. Using Data Structures to Model Real-World Things
      4. Summary
      5. Practice Questions
      6. Practice Projects
    6. Chapter 6 Manipulating Strings

      1. Working with Strings
      2. Useful String Methods
      3. Project: Password Locker
      4. Project: Adding Bullets to Wiki Markup
      5. Summary
      6. Practice Questions
      7. Practice Project
  2. Automating Tasks

    1. Chapter 7 Pattern Matching with Regular Expressions

      1. Finding Patterns of Text Without Regular Expressions
      2. Finding Patterns of Text with Regular Expressions
      3. More Pattern Matching with Regular Expressions
      4. Greedy and Nongreedy Matching
      5. The findall() Method
      6. Character Classes
      7. Making Your Own Character Classes
      8. The Caret and Dollar Sign Characters
      9. The Wildcard Character
      10. Review of Regex Symbols
      11. Case-Insensitive Matching
      12. Substituting Strings with the sub() Method
      13. Managing Complex Regexes
      14. Combining re.IGNORECASE, re.DOTALL, and re.VERBOSE
      15. Project: Phone Number and Email Address Extractor
      16. Summary
      17. Practice Questions
      18. Practice Projects
    2. Chapter 8 Reading and Writing Files

      1. Files and File Paths
      2. The os.path Module
      3. The File Reading/Writing Process
      4. Saving Variables with the shelve Module
      5. Saving Variables with the pprint.pformat() Function
      6. Project: Generating Random Quiz Files
      7. Project: Multiclipboard
      8. Summary
      9. Practice Questions
      10. Practice Projects
    3. Chapter 9 Organizing Files

      1. The shutil Module
      2. Walking a Directory Tree
      3. Compressing Files with the zipfile Module
      4. Project: Renaming Files with American-Style Dates to European-Style Dates
      5. Project: Backing Up a Folder into a ZIP File
      6. Summary
      7. Practice Questions
      8. Practice Projects
    4. Chapter 10 Debugging

      1. Raising Exceptions
      2. Getting the Traceback as a String
      3. Assertions
      4. Logging
      5. IDLE’s Debugger
      6. Summary
      7. Practice Questions
      8. Practice Project
    5. Chapter 11 Web Scraping

      1. Project: mapit.py with the webbrowser Module
      2. Downloading Files from the Web with the requests Module
      3. Saving Downloaded Files to the Hard Drive
      4. HTML
      5. Parsing HTML with the BeautifulSoup Module
      6. Project: “I’m Feeling Lucky” Google Search
      7. Project: Downloading All XKCD Comics
      8. Controlling the Browser with the selenium Module
      9. Summary
      10. Practice Questions
      11. Practice Projects
    6. Chapter 12 Working with Excel Spreadsheets

      1. Excel Documents
      2. Installing the openpyxl Module
      3. Reading Excel Documents
      4. Project: Reading Data from a Spreadsheet
      5. Writing Excel Documents
      6. Project: Updating a Spreadsheet
      7. Setting the Font Style of Cells
      8. Font Objects
      9. Formulas
      10. Adjusting Rows and Columns
      11. Charts
      12. Summary
      13. Practice Questions
      14. Practice Projects
    7. Chapter 13 Working with PDF and word Documents

      1. PDF Documents
      2. Project: Combining Select Pages from Many PDFs
      3. Word Documents
      4. Summary
      5. Practice Questions
      6. Practice Projects
    8. Chapter 14 Working with CSV Files and JSON Data

      1. The CSV Module
      2. Project: Removing the Header from CSV Files
      3. JSON and APIs
      4. The JSON Module
      5. Project: Fetching Current Weather Data
      6. Summary
      7. Practice Questions
      8. Practice Project
    9. Chapter 15 Keeping Time, Scheduling Tasks, and Launching Programs

      1. The time Module
      2. Rounding Numbers
      3. Project: Super Stopwatch
      4. The datetime Module
      5. Review of Python’s Time Functions
      6. Multithreading
      7. Project: Multithreaded XKCD Downloader
      8. Launching Other Programs from Python
      9. Project: Simple Countdown Program
      10. Summary
      11. Practice Questions
      12. Practice Projects
    10. Chapter 16 Sending Email and Text Messages

      1. SMTP
      2. Sending Email
      3. IMAP
      4. Retrieving and Deleting Emails with IMAP
      5. Project: Sending Member Dues Reminder Emails
      6. Sending Text Messages with Twilio
      7. Project: “Just Text Me” Module
      8. Summary
      9. Practice Questions
      10. Practice Projects
    11. Chapter 17 Manipulating Images

      1. Computer Image Fundamentals
      2. Manipulating Images with Pillow
      3. Project: Adding a Logo
      4. Drawing on Images
      5. Summary
      6. Practice Questions
      7. Practice Projects
    12. Chapter 18 Controlling the Keyboard and Mouse with GUI Automation

      1. Installing the pyautogui Module
      2. Staying on Track
      3. Controlling Mouse Movement
      4. Project: “Where Is the Mouse Right Now?”
      5. Controlling Mouse Interaction
      6. Working with the Screen
      7. Project: Extending the mouseNow Program
      8. Image Recognition
      9. Controlling the Keyboard
      10. Review of the PyAutoGUI Functions
      11. Project: Automatic Form Filler
      12. Summary
      13. Practice Questions
      14. Practice Projects
  1. Appendix Installing Third-Party Modules

    1. The pip Tool

    2. Installing Third-Party Modules

  2. Appendix Running Programs

    1. Shebang Line

    2. Running Python Programs on Windows

    3. Running Python Programs on OS X and Linux

    4. Running Python Programs with Assertions Disabled

  3. Appendix Answers to the Practice Questions

    1. Chapter 1

    2. Chapter 2

    3. Chapter 3

    4. Chapter 4

    5. Chapter 5

    6. Chapter 6

    7. Chapter 7

    8. Chapter 8

    9. Chapter 9

    10. Chapter 10

    11. Chapter 11

    12. Chapter 12

    13. Chapter 13

    14. Chapter 14

    15. Chapter 15

    16. Chapter 16

    17. Chapter 17

    18. Chapter 18

  4. Appendix Resources