Programming in Python

From zero to databases and data analysis, with Python for Everybody, Dr Charles Severance's lectures, and a complete Arabic track.

  • Level Beginner
  • Sections 17
  • English lectures 90
  • Arabic lessons 64
  • Readings 33
  • Exercise sets 16
  • Updated 5 October 2026
Enter the door Completely free and open

What you’ll learn

  • Write and run complete Python programs on your own computer
  • Use variables, conditions, loops and functions with confidence
  • Process strings, files, lists and dictionaries
  • Extract data with regular expressions and from web pages
  • Work with JSON and web APIs
  • Build an SQL database and visualise data

Door content

Setting up Python5
  1. Notes Section notes
  2. Reading · English Installation guide on py4e.com
  3. Video · Arabic Elzero (Arabic) #002 - What I Need To Learn ?
  4. Video · Arabic Elzero (Arabic) #003 - Syntax And Your First App
  5. Video · Arabic Elzero (Arabic) #004 - Comments And How To Use It
Why program?14
  1. Notes Section notes
  2. Video · English Lecture: Why program?, part 1
  3. Video · English Lecture: Why program?, part 2
  4. Video · English Lecture: Why program?, part 3
  5. Video · English Lecture: Why program?, part 4
  6. Video · English Lecture: Why program?, part 5
  7. Video · English Lecture: Why program?, part 6
  8. Video · English Lecture: Why program?, part 7
  9. Reading · English Read chapter 1 of the book
  10. Reading · Arabic Chapter 1 in the Arabic translation (PDF)
  11. Video · Arabic Elzero (Arabic) #001 - Introduction And What's Python
  12. Video · Arabic Elzero (Arabic) #005 - Dealing With Data in Python
  13. Video · Arabic Elzero (Arabic) #006 - Some Data Types Overview
  14. Exercises Auto-graded exercises (free sign-in on py4e.com)
Variables, expressions and statements20
  1. Notes Section notes
  2. Video · English Lecture: Variables, expressions and statements, part 1
  3. Video · English Lecture: Variables, expressions and statements, part 2
  4. Video · English Lecture: Variables, expressions and statements, part 3
  5. Video · English Lecture: Variables, expressions and statements, part 4
  6. Reading · English Read chapter 2 of the book
  7. Reading · Arabic Chapter 2 in the Arabic translation (PDF)
  8. Video · Arabic Elzero (Arabic) #007 - Variables Part One
  9. Video · Arabic Elzero (Arabic) #008 - Variables Part Two
  10. Video · Arabic Elzero (Arabic) #009 - Escape Sequences Characters
  11. Video · Arabic Elzero (Arabic) #010 - Concatenation And Training
  12. Video · Arabic Elzero (Arabic) #019 - Numbers
  13. Video · Arabic Elzero (Arabic) #020 - Arithmetic Operators
  14. Video · Arabic Elzero (Arabic) #033 - Boolean
  15. Video · Arabic Elzero (Arabic) #034 - Boolean Operators
  16. Video · Arabic Elzero (Arabic) #035 - Assignment Operators
  17. Video · Arabic Elzero (Arabic) #036 - Comparison Operators
  18. Video · Arabic Elzero (Arabic) #037 - Type Conversion
  19. Video · Arabic Elzero (Arabic) #038 - User Input
  20. Exercises Auto-graded exercises (free sign-in on py4e.com)
Conditional execution14
  1. Notes Section notes
  2. Video · English Lecture: Conditional execution, part 1
  3. Video · English Lecture: Conditional execution, part 2
  4. Video · English Lecture: Conditional execution, part 3
  5. Video · English Lecture: Conditional execution, part 4
  6. Reading · English Read chapter 3 of the book
  7. Reading · Arabic Chapter 3 in the Arabic translation (PDF)
  8. Video · Arabic Elzero (Arabic) #041 - Control Flow - If, Elif, Else
  9. Video · Arabic Elzero (Arabic) #042 - Control Flow - Nested If And Training
  10. Video · Arabic Elzero (Arabic) #043 - Control Flow - Ternary Conditional Operator
  11. Video · Arabic Elzero (Arabic) #045 - Membership Operators
  12. Video · Arabic Elzero (Arabic) #090 - Errors And Exceptions Raising
  13. Video · Arabic Elzero (Arabic) #091 - Exceptions Handling Try, Except, Else, Finally
  14. Exercises Auto-graded exercises (free sign-in on py4e.com)
Functions13
  1. Notes Section notes
  2. Video · English Lecture: Functions, part 1
  3. Video · English Lecture: Functions, part 2
  4. Video · English Lecture: Functions, part 3
  5. Reading · English Read chapter 4 of the book
  6. Reading · Arabic Chapter 4 in the Arabic translation (PDF)
  7. Video · Arabic Elzero (Arabic) #056 - Function And Return
  8. Video · Arabic Elzero (Arabic) #057 - Function Parameters And Arguments
  9. Video · Arabic Elzero (Arabic) #058 - Function Packing, Unpacking Arguments
  10. Video · Arabic Elzero (Arabic) #059 - Function Default Parameters
  11. Video · Arabic Elzero (Arabic) #062 - Function Scope
  12. Video · Arabic Elzero (Arabic) #064 - Function Lambda
  13. Exercises Auto-graded exercises (free sign-in on py4e.com)
Loops and iteration15
  1. Notes Section notes
  2. Video · English Lecture: Loops and iteration, part 1
  3. Video · English Lecture: Loops and iteration, part 2
  4. Video · English Lecture: Loops and iteration, part 3
  5. Video · English Lecture: Loops and iteration, part 4
  6. Video · English Lecture: Loops and iteration, part 5
  7. Reading · English Read chapter 5 of the book
  8. Reading · Arabic Chapter 5 in the Arabic translation (PDF)
  9. Video · Arabic Elzero (Arabic) #047 - Loop - While and Else
  10. Video · Arabic Elzero (Arabic) #048 - Loop - While Training's
  11. Video · Arabic Elzero (Arabic) #051 - Loop For and Else
  12. Video · Arabic Elzero (Arabic) #052 - Loop For Training's
  13. Video · Arabic Elzero (Arabic) #053 - Loop For Nested Loop
  14. Video · Arabic Elzero (Arabic) #054 - Loop - Break Continue Pass
  15. Exercises Auto-graded exercises (free sign-in on py4e.com)
Strings15
  1. Notes Section notes
  2. Video · English Lecture: Strings, part 1
  3. Video · English Lecture: Strings, part 2
  4. Video · English Lecture: Strings, part 3
  5. Reading · English Read chapter 6 of the book
  6. Reading · Arabic Chapter 6 in the Arabic translation (PDF)
  7. Video · Arabic Elzero (Arabic) #011 - Strings
  8. Video · Arabic Elzero (Arabic) #012 - Strings - Indexing And Slicing
  9. Video · Arabic Elzero (Arabic) #013 - Strings Methods Part One
  10. Video · Arabic Elzero (Arabic) #014 - Strings Methods Part Two
  11. Video · Arabic Elzero (Arabic) #015 - Strings Methods Part Three
  12. Video · Arabic Elzero (Arabic) #016 - Strings Methods Part Four
  13. Video · Arabic Elzero (Arabic) #017 - Strings Formatting The Old Way
  14. Video · Arabic Elzero (Arabic) #018 - Strings Formatting The New Ways
  15. Exercises Auto-graded exercises (free sign-in on py4e.com)
Files11
  1. Notes Section notes
  2. Video · English Lecture: Files, part 1
  3. Video · English Lecture: Files, part 2
  4. Video · English Lecture: Files, part 3
  5. Reading · English Read chapter 7 of the book
  6. Reading · Arabic Chapter 7 in the Arabic translation (PDF)
  7. Video · Arabic Elzero (Arabic) #065 - Files Handling Part One Intro
  8. Video · Arabic Elzero (Arabic) #066 - Files Handling Part 2 Read Files
  9. Video · Arabic Elzero (Arabic) #067 - Files Handling Part 3 Write and Append In Files
  10. Video · Arabic Elzero (Arabic) #068 - Files Handling Part 4 Important Info
  11. Exercises Auto-graded exercises (free sign-in on py4e.com)
Lists11
  1. Notes Section notes
  2. Video · English Lecture: Lists, part 1
  3. Video · English Lecture: Lists, part 2
  4. Video · English Lecture: Lists, part 3
  5. Video · English Lecture: Lists, part 4
  6. Reading · English Read chapter 8 of the book
  7. Reading · Arabic Chapter 8 in the Arabic translation (PDF)
  8. Video · Arabic Elzero (Arabic) #021 - Lists
  9. Video · Arabic Elzero (Arabic) #022 - Lists Methods Part One
  10. Video · Arabic Elzero (Arabic) #023 - Lists Methods Part Two
  11. Exercises Auto-graded exercises (free sign-in on py4e.com)
Dictionaries13
  1. Notes Section notes
  2. Video · English Lecture: Dictionaries, part 1
  3. Video · English Lecture: Dictionaries, part 2
  4. Video · English Lecture: Dictionaries, part 3
  5. Video · English Lecture: Dictionaries, part 4
  6. Video · English Lecture: Dictionaries, part 5
  7. Reading · English Read chapter 9 of the book
  8. Reading · Arabic Chapter 9 in the Arabic translation (PDF)
  9. Video · Arabic Elzero (Arabic) #030 - Dictionary
  10. Video · Arabic Elzero (Arabic) #031 - Dictionary Methods Part One
  11. Video · Arabic Elzero (Arabic) #032 - Dictionary Methods Part Two
  12. Video · Arabic Elzero (Arabic) #055 - Loop Advanced Dictionary
  13. Exercises Auto-graded exercises (free sign-in on py4e.com)
Tuples10
  1. Notes Section notes
  2. Video · English Lecture: Tuples, part 1
  3. Video · English Lecture: Tuples, part 2
  4. Video · English Lecture: Tuples, part 3
  5. Reading · English Read chapter 10 of the book
  6. Reading · Arabic Chapter 10 in the Arabic translation (PDF)
  7. Video · Arabic Elzero (Arabic) #024 - Tuples And Methods Part One
  8. Video · Arabic Elzero (Arabic) #025 - Tuples And Methods Part Two
  9. Video · Arabic Elzero (Arabic) #026 - Set
  10. Exercises Auto-graded exercises (free sign-in on py4e.com)
Regular expressions13
  1. Notes Section notes
  2. Video · English Lecture: Regular expressions, part 1
  3. Video · English Lecture: Regular expressions, part 2
  4. Video · English Lecture: Regular expressions, part 3
  5. Reading · English Read chapter 11 of the book
  6. Reading · Arabic Chapter 11 in the Arabic translation (PDF)
  7. Video · Arabic Elzero (Arabic) #095 - Regular Expressions Part 1 Intro
  8. Video · Arabic Elzero (Arabic) #096 - Regular Expressions Part 2 Quantifiers
  9. Video · Arabic Elzero (Arabic) #097 - Regular Expressions Part 3 Characters Classes Training's
  10. Video · Arabic Elzero (Arabic) #098 - Regular Expressions Part 4 Assertions & Email Pattern
  11. Video · Arabic Elzero (Arabic) #099 - Regular Expressions Part 5 Logical Or & Escaping
  12. Video · Arabic Elzero (Arabic) #100 - Regular Expressions Part 6 Re Module Search & FindAll
  13. Exercises Auto-graded exercises (free sign-in on py4e.com)
Networked programs15
  1. Notes Section notes
  2. Video · English Lecture: Networked programs, part 1
  3. Video · English Lecture: Networked programs, part 2
  4. Video · English Lecture: Networked programs, part 3
  5. Video · English Lecture: Networked programs, part 4
  6. Video · English Lecture: Networked programs, part 5
  7. Video · English Lecture: Networked programs, part 6
  8. Video · English Lecture: Networked programs, part 7
  9. Video · English Lecture: Networked programs, part 8
  10. Video · English Lecture: Networked programs, part 9
  11. Video · English Lecture: Networked programs, part 10
  12. Video · English Lecture: Networked programs, part 11
  13. Reading · English Read chapter 12 of the book
  14. Reading · Arabic Chapter 12 in the Arabic translation (PDF)
  15. Exercises Auto-graded exercises (free sign-in on py4e.com)
Web services: XML, JSON and APIs15
  1. Notes Section notes
  2. Video · English Lecture: Web services: XML, JSON and APIs, part 1
  3. Video · English Lecture: Web services: XML, JSON and APIs, part 2
  4. Video · English Lecture: Web services: XML, JSON and APIs, part 3
  5. Video · English Lecture: Web services: XML, JSON and APIs, part 4
  6. Video · English Lecture: Web services: XML, JSON and APIs, part 5
  7. Video · English Lecture: Web services: XML, JSON and APIs, part 6
  8. Video · English Lecture: Web services: XML, JSON and APIs, part 7
  9. Video · English Lecture: Web services: XML, JSON and APIs, part 8
  10. Video · English Lecture: Web services: XML, JSON and APIs, part 9
  11. Video · English Lecture: Web services: XML, JSON and APIs, part 10
  12. Video · English Lecture: Web services: XML, JSON and APIs, part 11
  13. Reading · English Read chapter 13 of the book
  14. Reading · Arabic Chapter 13 in the Arabic translation (PDF)
  15. Exercises Auto-graded exercises (free sign-in on py4e.com)
Object-oriented programming9
  1. Notes Section notes
  2. Video · English Lecture: Object-oriented programming, part 1
  3. Video · English Lecture: Object-oriented programming, part 2
  4. Video · English Lecture: Object-oriented programming, part 3
  5. Video · English Lecture: Object-oriented programming, part 4
  6. Reading · English Read chapter 14 of the book
  7. Reading · Arabic Chapter 14 in the Arabic translation (PDF)
  8. Reading · Arabic In Arabic: this topic in the Elzero series (lesson 101 onwards)
  9. Exercises Auto-graded exercises (free sign-in on py4e.com)
Databases and SQL15
  1. Notes Section notes
  2. Video · English Lecture: Databases and SQL, part 1
  3. Video · English Lecture: Databases and SQL, part 2
  4. Video · English Lecture: Databases and SQL, part 3
  5. Video · English Lecture: Databases and SQL, part 4
  6. Video · English Lecture: Databases and SQL, part 5
  7. Video · English Lecture: Databases and SQL, part 6
  8. Video · English Lecture: Databases and SQL, part 7
  9. Video · English Lecture: Databases and SQL, part 8
  10. Video · English Lecture: Databases and SQL, part 9
  11. Video · English Lecture: Databases and SQL, part 10
  12. Reading · English Read chapter 15 of the book
  13. Reading · Arabic Chapter 15 in the Arabic translation (PDF)
  14. Reading · Arabic In Arabic: this topic in the Elzero series (lesson 101 onwards)
  15. Exercises Auto-graded exercises (free sign-in on py4e.com)
Visualising data14
  1. Notes Section notes
  2. Video · English Lecture: Visualising data, part 1
  3. Video · English Lecture: Visualising data, part 2
  4. Video · English Lecture: Visualising data, part 3
  5. Video · English Lecture: Visualising data, part 4
  6. Video · English Lecture: Visualising data, part 5
  7. Video · English Lecture: Visualising data, part 6
  8. Video · English Lecture: Visualising data, part 7
  9. Video · English Lecture: Visualising data, part 8
  10. Video · English Lecture: Visualising data, part 9
  11. Video · English Lecture: Visualising data, part 10
  12. Reading · English Read chapter 16 of the book
  13. Reading · Arabic Chapter 16 in the Arabic translation (PDF)
  14. Exercises Auto-graded exercises (free sign-in on py4e.com)

Requirements

  • No previous programming experience
  • A computer running Windows, macOS or Linux
  • Main lectures are in English, with a full parallel Arabic track

About this door

This door is built on Python for Everybody, the course Dr Charles Severance teaches at the University of Michigan and one of the best-known open programming courses in the world. Its book is published under a Creative Commons licence and has a free Arabic translation.

Every section has short notes, lectures in English, the matching book chapter in English and Arabic, parallel Arabic lessons from Elzero Web School, and auto-graded exercises. Everything is open from the start, at your own pace.

Sources and licences

SourceAuthorLicence
Python for Everybody (book, slides, lectures)Charles R. SeveranceCC BY 4.0
بايثون للجميع: الترجمة العربيةElectronics GoFree PDF published on py4e.com (linked, not hosted)
Learn Python in Arabic (Mastering Python)Elzero Web SchoolLinked and embedded from YouTube; not hosted by Door

This is a curated door: lectures are linked from where they were published, not hosted, and every item names its source. The notes are written by Door.