Skip to content

PRO TIP Block youtube.com at the DNS level — Pi-hole, NextDNS or your hosts file — but allow youtube-nocookie.com and i.ytimg.com. These tutorials keep playing; the rabbit hole does not.

Learning without distractions
  1. 1 15:29 Python Tutorial for Beginners 1: Install and Setup for Mac and Windows Corey Schafer · 4.3M views
  2. 2 21:12 Python Tutorial for Beginners 2: Strings – Working with Textual Data Corey Schafer · 2.1M views
  3. 3 11:55 Python Tutorial for Beginners 3: Integers and Floats – Working with Numeric Data Corey Schafer · 999K views
  4. 4 29:05 Python Tutorial for Beginners 4: Lists, Tuples, and Sets Corey Schafer · 1.8M views
  5. 5 9:59 Python Tutorial for Beginners 5: Dictionaries – Working with Key-Value Pairs Corey Schafer · 1.8M views
  6. 6 16:28 Python Tutorial for Beginners 6: Conditionals and Booleans – If, Else, and Elif Statements Corey Schafer · 826.7K views
  7. 7 10:14 Python Tutorial for Beginners 7: Loops and Iterations – For/While Loops Corey Schafer · 1.1M views
  8. 8 21:48 Python Tutorial for Beginners 8: Functions Corey Schafer · 1.3M views
  9. 9 21:57 Python Tutorial for Beginners 9: Import Modules and Exploring The Standard Library Corey Schafer · 1M views
  10. 10 26:03 Setting up a Python Development Environment in Sublime Text Corey Schafer · 1.1M views
  11. 11 23:01 Setting up a Python Development Environment in Atom Corey Schafer · 668.1K views
  12. 12 16:35 Setting up a Python Development Environment in Eclipse Corey Schafer · 191.9K views
  13. 13 9:06 Python Tutorial: pip – An in-depth look at the package management system Corey Schafer · 287.8K views
  14. 14 9:45 Python Tutorial: virtualenv and why you should use virtual environments Corey Schafer · 867.5K views
  15. 15 11:25 Python Tutorial: Anaconda – Installation and Using Conda Corey Schafer · 1.2M views
  16. 16 20:49 Python Tutorial: How I Manage Multiple Projects, Virtual Environments, and Environment Variables Corey Schafer · 163K views
  17. 17 30:21 Jupyter Notebook Tutorial: Introduction, Setup, and Walkthrough Corey Schafer · 2.3M views
  18. 18 20:59 Python Tutorial: Variable Scope – Understanding the LEGB rule and global/nonlocal statements Corey Schafer · 409.2K views
  19. 19 10:44 Python Tutorial: Slicing Lists and Strings Corey Schafer · 501.7K views
  20. 20 18:29 Python Tutorial: Comprehensions – How they work and why you should be using them Corey Schafer · 581.6K views
  21. 21 12:07 Python Tutorial: Sorting Lists, Tuples, and Objects Corey Schafer · 305.9K views
  22. 22 13:53 Python Tutorial: String Formatting – Advanced Operations for Dicts, Lists, Numbers, and Dates Corey Schafer · 347.6K views
  23. 23 19:14 Python Tutorial: OS Module – Use Underlying Operating System Functionality Corey Schafer · 1M views
  24. 24 27:49 Python Tutorial: Datetime Module – How to work with Dates, Times, Timedeltas, and Timezones Corey Schafer · 594.6K views
  25. 25 24:33 Python Tutorial: File Objects – Reading and Writing to Files Corey Schafer · 2.1M views
  26. 26 12:34 Python Tutorial: Automate Parsing and Renaming of Multiple Files Corey Schafer · 459.3K views
  27. 27 13:37 Python Tutorial: Generate Random Numbers and Data Using the random Module Corey Schafer · 531.1K views
  28. 28 16:12 Python Tutorial: CSV Module – How to Read, Parse, and Write CSV Files Corey Schafer · 1.5M views
  29. 29 18:48 Python Tutorial: Real World Example – Parsing Names From a CSV to an HTML List Corey Schafer · 195.6K views
  30. 30 53:18 Python Tutorial: re Module – How to Write and Match Regular Expressions (Regex) Corey Schafer · 1.2M views
  31. 31 10:34 Python Tutorial: Using Try/Except Blocks for Error Handling Corey Schafer · 809.1K views
  32. 32 15:23 Python Tutorial: Duck Typing and Asking Forgiveness, Not Permission (EAFP) Corey Schafer · 140.8K views
  33. 33 24:17 Python Tutorial: How to Set the Path and Switch Between Different Versions/Executables (Windows) Corey Schafer · 224K views
  34. 34 30:44 Python Tutorial: How to Set the Path and Switch Between Different Versions/Executables (Mac & Linux) Corey Schafer · 192K views
  35. 35 13:43 Python Quick Tip: F-Strings – How to Use Them and Advanced String Formatting Corey Schafer · 245.1K views
  36. 36 11:14 Python Tutorial: Generators – How to use them and the benefits you receive Corey Schafer · 926.9K views
  37. 37 30:28 Python Tutorial: Decorators – Dynamically Alter The Functionality Of Your Functions Corey Schafer · 1M views
  38. 38 6:13 Python Tutorial: Decorators With Arguments Corey Schafer · 117.2K views
  39. 39 7:21 Python Tutorial: Namedtuple – When and why should you use namedtuples? Corey Schafer · 123.3K views
  40. 40 15:24 Python OOP Tutorial 1: Classes and Instances Corey Schafer · 5M views
  41. 41 11:41 Python OOP Tutorial 2: Class Variables Corey Schafer · 1.9M views
  42. 42 15:20 Python OOP Tutorial 3: classmethods and staticmethods Corey Schafer · 1.7M views
  43. 43 19:40 Python OOP Tutorial 4: Inheritance – Creating Subclasses Corey Schafer · 1.5M views
  44. 44 13:50 Python OOP Tutorial 5: Special (Magic/Dunder) Methods Corey Schafer · 942.4K views
  45. 45 9:33 Python OOP Tutorial 6: Property Decorators – Getters, Setters, and Deleters Corey Schafer · 1.1M views
  46. 46 45:48 Python Tutorial: Web Scraping with BeautifulSoup and Requests Corey Schafer · 1.2M views
  47. 47 20:34 Python Tutorial: Working with JSON Data using the json Module Corey Schafer · 1.3M views
  48. 48 25:07 Python Tutorial: Calculate Number of Days, Weeks, or Months to Reach Specific Goals Corey Schafer · 76.3K views
  49. 49 20:37 Python Tutorial: Context Managers – Efficiently Managing Resources Corey Schafer · 218.2K views
  50. 50 7:45 Python Tutorial: str() vs repr() Corey Schafer · 135.9K views
  51. 51 29:49 Python SQLite Tutorial: Complete Overview – Creating a Database, Table, and Running Queries Corey Schafer · 1.1M views
  52. 52 14:25 Python Tutorial: Logging Basics – Logging to Files, Setting Levels, and Formatting Corey Schafer · 570.2K views
  53. 53 19:47 Python Tutorial: Logging Advanced – Loggers, Handlers, and Formatters Corey Schafer · 364.3K views
  54. 54 4:32 Python Quick Tip: Hiding Passwords and Secret Keys in Environment Variables (Mac & Linux) Corey Schafer · 171.2K views
  55. 55 4:38 Python Quick Tip: Hiding Passwords and Secret Keys in Environment Variables (Windows) Corey Schafer · 184.3K views
  56. 56 8:43 Python Tutorial: if __name__ == ‘__main__’ Corey Schafer · 2.1M views
  57. 57 39:13 Python Tutorial: Unit Testing Your Code with the unittest Module Corey Schafer · 1.5M views
  58. 58 32:29 Python Tutorial: Pipenv – Easily Manage Packages and Virtual Environments Corey Schafer · 269.8K views
  59. 59 22:55 Preparing for a Python Interview: 10 Things You Should Know Corey Schafer · 987.2K views
  60. 60 7:04 Python Tutorial: Else Clauses on Loops Corey Schafer · 51.7K views
  61. 61 15:48 Python Tutorial: Image Manipulation with Pillow Corey Schafer · 421.9K views
  62. 62 7:56 Python Tutorial: Custom Sublime Text Build Systems Corey Schafer · 120.6K views
  63. 63 2:03 Python: Ex Machina Easter Egg – Hidden Message within the Code Corey Schafer · 32.6K views
  64. 64 17:09 Python Flask Tutorial: Full-Featured Web App Part 1 – Getting Started Corey Schafer · 2.1M views
  65. 65 31:42 Python Flask Tutorial: Full-Featured Web App Part 2 – Templates Corey Schafer · 947.2K views
  66. 66 48:16 Python Flask Tutorial: Full-Featured Web App Part 3 – Forms and User Input Corey Schafer · 799.7K views
  67. 67 29:58 Python Flask Tutorial: Full-Featured Web App Part 4 – Database with Flask-SQLAlchemy Corey Schafer · 703.8K views
  68. 68 20:38 Python Flask Tutorial: Full-Featured Web App Part 5 – Package Structure Corey Schafer · 360.3K views
  69. 69 47:15 Python Flask Tutorial: Full-Featured Web App Part 6 – User Authentication Corey Schafer · 426.7K views
  70. 70 42:15 Python Flask Tutorial: Full-Featured Web App Part 7 – User Account and Profile Picture Corey Schafer · 264.9K views
  71. 71 48:13 Python Flask Tutorial: Full-Featured Web App Part 8 – Create, Update, and Delete Posts Corey Schafer · 248.9K views
  72. 72 31:22 Python Flask Tutorial: Full-Featured Web App Part 9 – Pagination Corey Schafer · 174.1K views
  73. 73 42:12 Python Flask Tutorial: Full-Featured Web App Part 10 – Email and Password Reset Corey Schafer · 182K views
  74. 74 42:43 Python Flask Tutorial: Full-Featured Web App Part 11 – Blueprints and Configuration Corey Schafer · 195.8K views
  75. 75 12:45 Python Flask Tutorial: Full-Featured Web App Part 12 – Custom Error Pages Corey Schafer · 115.9K views
  76. 76 18:34 Python Tutorial: Sets – Set Methods and Operations to Solve Common Problems Corey Schafer · 158.3K views
  77. 77 15:32 Python Django Tutorial: Full-Featured Web App Part 1 – Getting Started Corey Schafer · 2.4M views
  78. 78 20:27 Python Django Tutorial: Full-Featured Web App Part 2 – Applications and Routes Corey Schafer · 912.9K views
  79. 79 45:45 Python Django Tutorial: Full-Featured Web App Part 3 – Templates Corey Schafer · 953K views
  80. 80 9:00 Python Django Tutorial: Full-Featured Web App Part 4 – Admin Page Corey Schafer · 450.7K views
  81. 81 38:47 Python Django Tutorial: Full-Featured Web App Part 5 – Database and Migrations Corey Schafer · 706.8K views
  82. 82 45:56 Python Django Tutorial: Full-Featured Web App Part 6 – User Registration Corey Schafer · 664.7K views
  83. 83 31:17 Python Django Tutorial: Full-Featured Web App Part 7 – Login and Logout System Corey Schafer · 496.1K views
  84. 84 35:41 Python Django Tutorial: Full-Featured Web App Part 8 – User Profile and Picture Corey Schafer · 448.9K views
  85. 85 26:07 Python Django Tutorial: Full-Featured Web App Part 9 – Update User Profile Corey Schafer · 300.4K views
  86. 86 53:15 Python Django Tutorial: Full-Featured Web App Part 10 – Create, Update, and Delete Posts Corey Schafer · 382.1K views
  87. 87 37:01 Python Django Tutorial: Full-Featured Web App Part 11 – Pagination Corey Schafer · 237.5K views
  88. 88 25:04 Python Django Tutorial: Full-Featured Web App Part 12 – Email and Password Reset Corey Schafer · 235.1K views
  89. 89 1:22:01 Python Django Tutorial: Deploying Your Application (Option #1) – Deploy to a Linux Server Corey Schafer · 450.3K views
  90. 90 23:08 Python Tutorial: Iterators and Iterables – What Are They and How Do They Work? Corey Schafer · 420.1K views
  91. 91 13:47 Python Coding Problem: Creating Your Own Iterators Corey Schafer · 74K views
  92. 92 45:49 Python Tutorial: Itertools Module – Iterator Functions for Efficient Looping Corey Schafer · 246.5K views
  93. 93 1:15:00 Python Flask Tutorial: Deploying Your Application (Option #1) – Deploy to a Linux Server Corey Schafer · 363.9K views
  94. 94 24:00 Python Flask Tutorial: How to Use a Custom Domain Name for Our Application Corey Schafer · 115.7K views
  95. 95 27:18 Python Django Tutorial: How to Use a Custom Domain Name for Our Application Corey Schafer · 138.5K views
  96. 96 17:14 Python Flask Tutorial: How to enable HTTPS with a free SSL/TLS Certificate using Let’s Encrypt Corey Schafer · 147.8K views
  97. 97 20:47 Python Django Tutorial: How to enable HTTPS with a free SSL/TLS Certificate using Let’s Encrypt Corey Schafer · 154.4K views
  98. 98 26:35 Python Django Tutorial: Full-Featured Web App Part 13 – Using AWS S3 for File Uploads Corey Schafer · 164.7K views
  99. 99 53:31 Python Django Tutorial: Deploying Your Application (Option #2) – Deploy using Heroku Corey Schafer · 295.3K views
  100. 100 25:01 Python Requests Tutorial: Request Web Pages, Download Images, POST Data, Read JSON, and More Corey Schafer · 1.1M views
  101. 101 45:59 Python Tutorial: Write a Script to Monitor a Website, Send Alert Emails, and Reboot Servers Corey Schafer · 162.4K views
  102. 102 56:27 Python Tutorial: Web Scraping with Requests-HTML Corey Schafer · 200.1K views
  103. 103 31:57 How to Send Emails Using Python – Plain Text, Adding Attachments, HTML Emails, and More Corey Schafer · 482K views
  104. 104 39:21 10 Python Tips and Tricks For Writing Better Code Corey Schafer · 1.4M views
  105. 105 14:18 Python Tutorial: VENV (Mac & Linux) – How to Use Virtual Environments with the Built-In venv Module Corey Schafer · 310.1K views
  106. 106 17:10 Python Tutorial: VENV (Windows) – How to Use Virtual Environments with the Built-In venv Module Corey Schafer · 605.2K views
  107. 107 48:43 How to Write Python Scripts to Analyze JSON APIs and Sort Results Corey Schafer · 165.5K views
  108. 108 29:19 5 Common Python Mistakes and How to Fix Them Corey Schafer · 302.7K views
  109. 109 16:04 Python Tutorial: Clarifying the Issues with Mutable Default Arguments Corey Schafer · 39K views
  110. 110 1:15:44 Visual Studio Code (Mac) – Setting up a Python Development Environment and Complete Overview Corey Schafer · 283.3K views
  111. 111 1:15:17 Visual Studio Code (Windows) – Setting up a Python Development Environment and Complete Overview Corey Schafer · 735.5K views
  112. 112 35:01 Matplotlib Tutorial (Part 1): Creating and Customizing Our First Plots Corey Schafer · 1.2M views
  113. 113 34:26 Matplotlib Tutorial (Part 2): Bar Charts and Analyzing Data from CSVs Corey Schafer · 387.3K views
  114. 114 17:02 Matplotlib Tutorial (Part 3): Pie Charts Corey Schafer · 177.5K views
  115. 115 14:49 Matplotlib Tutorial (Part 4): Stack Plots Corey Schafer · 123.3K views
  116. 116 15:18 Matplotlib Tutorial (Part 5): Filling Area on Line Plots Corey Schafer · 115.5K views
  117. 117 16:36 Matplotlib Tutorial (Part 6): Histograms Corey Schafer · 211.9K views
  118. 118 21:24 Matplotlib Tutorial (Part 7): Scatter Plots Corey Schafer · 199K views
  119. 119 17:09 Matplotlib Tutorial (Part 8): Plotting Time Series Data Corey Schafer · 202.2K views
  120. 120 20:34 Matplotlib Tutorial (Part 9): Plotting Live Data in Real-Time Corey Schafer · 454.5K views
  121. 121 21:22 Matplotlib Tutorial (Part 10): Subplots Corey Schafer · 265.8K views
  122. 122 19:01 Python Tutorial: Calling External Commands Using the Subprocess Module Corey Schafer · 406.8K views
  123. 123 8:51 Python Quick Tip: The Difference Between “==” and “is” (Equality vs Identity) Corey Schafer · 128.2K views
  124. 124 36:05 Python Threading Tutorial: Run Code Concurrently Using the Threading Module Corey Schafer · 918.1K views
  125. 125 44:15 Python Multiprocessing Tutorial: Run Code in Parallel Using the Multiprocessing Module Corey Schafer · 857.5K views
  126. 126 51:28 Python Data Science Tutorial: Analyzing the 2019 Stack Overflow Developer Survey Corey Schafer · 66.1K views
  127. 127 27:10 Python Tutorial: Zip Files – Creating and Extracting Zip Archives Corey Schafer · 130.4K views
  128. 128 23:01 Python Pandas Tutorial (Part 1): Getting Started with Data Analysis – Installation and Loading Data Corey Schafer · 1.7M views
  129. 129 33:35 Python Pandas Tutorial (Part 2): DataFrame and Series Basics – Selecting Rows and Columns Corey Schafer · 771.4K views
  130. 130 17:27 Python Pandas Tutorial (Part 3): Indexes – How to Set, Reset, and Use Indexes Corey Schafer · 470.9K views
  131. 131 23:04 Python Pandas Tutorial (Part 4): Filtering – Using Conditionals to Filter Rows and Columns Corey Schafer · 521.6K views
  132. 132 40:03 Python Pandas Tutorial (Part 5): Updating Rows and Columns – Modifying Data Within DataFrames Corey Schafer · 471.8K views
  133. 133 16:55 Python Pandas Tutorial (Part 6): Add/Remove Rows and Columns From DataFrames Corey Schafer · 322.9K views
  134. 134 15:40 Python Pandas Tutorial (Part 7): Sorting Data Corey Schafer · 219K views
  135. 135 49:06 Python Pandas Tutorial (Part 8): Grouping and Aggregating – Analyzing and Exploring Your Data Corey Schafer · 483.3K views
  136. 136 31:54 Python Pandas Tutorial (Part 9): Cleaning Data – Casting Datatypes and Handling Missing Values Corey Schafer · 269.2K views
  137. 137 35:41 Python Pandas Tutorial (Part 10): Working with Dates and Time Series Data Corey Schafer · 370.8K views
  138. 138 32:45 Python Pandas Tutorial (Part 11): Reading/Writing Data to Different Sources – Excel, JSON, SQL, Etc Corey Schafer · 207.5K views
  139. 139 52:33 Python Tutorial: Real World Example – Using Patreon API and Pillow to Automate Image Creation Corey Schafer · 43.8K views
  140. 140 20:49 Python YouTube API Tutorial: Getting Started – Creating an API Key and Querying the API Corey Schafer · 237K views
  141. 141 37:38 Python YouTube API Tutorial: Calculating the Duration of a Playlist Corey Schafer · 63.1K views
  142. 142 22:08 Python YouTube API Tutorial: Sort a Playlist by Most Popular Videos Corey Schafer · 50K views
  143. 143 43:21 Python YouTube API Tutorial: Using OAuth to Access User Accounts Corey Schafer · 152.9K views
  144. 144 31:08 How to Use ChatGPT as a Powerful Tool for Programming Corey Schafer · 321.3K views
  145. 145 16:58 Python Tutorial: Securely Manage Passwords and API Keys with DotEnv Corey Schafer · 50.4K views
  146. 146 1:18:30 Automating My Bill Payments with Python and Selenium Corey Schafer · 61.4K views
  147. 147 41:08 Python Tkinter Tutorial (Part 1): Getting Started, Elements, Layouts, and Events Corey Schafer · 162.3K views
  148. 148 34:51 Python Tutorial: Pathlib – The Modern Way to Handle File Paths Corey Schafer · 79.7K views
  149. 149 24:10 Python Tutorial: Generate a Web Portfolio and Resume from One JSON File Corey Schafer · 38.9K views
  150. 150 24:05 I Let Python Pick My March Madness Bracket – Bracket Simulation Tutorial Corey Schafer · 17.3K views
  151. 151 27:02 Python Tutorial: UV – A Faster, All-in-One Package Manager to Replace Pip and Venv Corey Schafer · 277.5K views
  152. 152 35:47 Python Tutorial: Ruff – A Fast Linter & Formatter to Replace Multiple Tools and Improve Code Quality Corey Schafer · 100.4K views
  153. 153 18:16 Python Tutorial: Type Hinting vs Type Checking vs Data Validation – What’s the Difference? Corey Schafer · 40.4K views
  154. 154 40:59 Python Tutorial: Type Hints – From Basic Annotations to Advanced Generics Corey Schafer · 51.9K views
  155. 155 1:42:41 Python Tutorial: AsyncIO – Complete Guide to Asynchronous Programming with Animations Corey Schafer · 167.2K views
  156. 156 1:29:25 Python Pydantic Tutorial: Complete Data Validation Course (Used by FastAPI) Corey Schafer · 81.7K views
  157. 157 14:23:37 Python FastAPI Tutorial: Full Course for Beginners – Build a Full-Stack Web App Corey Schafer · 86.2K views