Mô tả

Welcome to the Complete Python Course!

Learn Python from a software developer. If you want to master Python and write efficient, elegant, and simple code, this is the course you've been looking for!

Even if you have no programming experience, this course will give you a super-strong foundation and teach you how to use Python to achieve any goal.

We've crafted every piece of content to be concise and straightforward, while never leaving you confused:

  • Hundreds of code-along videos with in-depth explanations

  • Dozens of presentations with animated diagrams

  • Quizzes

  • Coding exercises

  • Python projects for you to learn to make real Python applications


Why Choose THIS Course?

  • Get a broader and deeper experience in Python than with any other Udemy course on the market.

  • Start at zero and become an expert whilst learning all about the inner workings of Python.

  • Learn how to write professional Python code like a professional Python developer.

  • Embrace simplicity and develop good programming habits.

  • Explore advanced Python, such as decorators, asynchronous development, and managing project dependencies

  • Improve your Python code with formatters and linters

  • Store data in a database so it's accessible and searchable.

  • Learn about web development using Flask, to create websites that you can share with users.

  • Extract information from existing websites using web scraping.

  • Control your browser using Selenium, to automate using almost any website!

  • Learn to interact with REST APIs to fetch data from other web applications.

  • Create desktop GUIs using Tkinter, and turn them into executable applications you can share with non-technical users.

  • Start working with unit testing in Python by learning about the unittest library


Who Is This Course For?

  • Beginners who have never programmed before.

  • Programmers with experience in other languages who want to kickstart their Python programming.

  • Programmers who know some Python but want to round off their skills and become truly proficient.


What Am I Going to Get From This Course?

  • Lifetime access to over 300 code-along lectures covering all aspects of Python, from the foundations to advanced concepts.

  • Complete written notes and code for you to read and refer to as you progress through the course.

  • Milestone projects for you to complete throughout the course. These provide a challenge and an opportunity for you to apply what you've learned. We always go over the code after to show you how we would tackle them.

  • Quizzes and coding exercises for you to check your understanding.

  • High-quality help and support. Every year we personally help thousands of students. We don’t leave a single question unanswered.


Here's a breakdown of some of the topics this course covers!

  • Command Line Basics

  • Installing Python

  • Running Python Code

  • Strings and Numbers

  • String Formatting

  • Lists, Dictionaries, Tuples, and Sets

  • Functions and lambdas

  • Decorators

  • Scope

  • args/kwargs and default parameter values

  • The concept of mutability

  • Built-in Functions

  • Debugging and Error Handling

  • Type hinting (new in Python 3.8)

  • Creating your own error classes

  • Modules and installing libraries

  • Object Oriented Programming, in a lot of depth

  • Composition and Inheritance

  • File I/O

  • Database interactions

  • Unit testing

  • Regex (Regular Expressions)

  • Web Scraping

  • Algorithms and Data Structures

  • And much, much more!


Feel free to read through the course curriculum, as well as watch the free lectures of this course. I'm sure you'll enjoy them.

But don't take my word for it! Read through some of these reviews and see what other students are saying:

> "Excellent teaching ability combined with deep understanding of the subject has produced one of the best online courses I've taken in decades. Fabulous work! Thank you!" - Maria Iano

> "Really amazing course. would recommend to all the students or programmers who want to learn python from scratch." - Hriday Panchal

> "Exactly the course I needed!!! Explanations are clear, lots of examples, and everything you need in python! thanks so much." - Julien Palleau

> "Another amazing offering from Jose. This course offers the most comprehensive look at Python available. Consider, for example, the extensive treatment regarding asynchronous development, or the detailed introduction to web development with Flask, or the Tkinter GUI introduction. I have had several other offerings by Jose here on Udemy. Always get far more than I expected." - Martin Dwyer

> "Honestly, I don’t know much about other courses, but after taking a quick peek at some of them, I can safely say that this is the most complete Python course in Udemy. [...] Definitely recommended for those who want to begin their Python journey but don’t know where to start." - Mateo Delgadillo Karam


Also remember: we have a 30-day money-back guarantee, so sign up and try the course totally risk-free!

I'll see you on the inside.

Bạn sẽ học được gì

From foundations to expert, learn about every major Python topic, working with Python 3.

Write professional-grade Pythonic code with all the best practices and avoiding common pitfalls.

Master Object-Oriented Programming and structure your Python programs like a professional.

Swiftly understand complex topics like decorators, algorithms, and asynchronous programming in Python.

Automate extracting data from websites using web scraping libraries like BeautifulSoup and Selenium.

Learn how to write desktop applications with Python and Tkinter.

Interact with REST APIs using Python and build a currency converter!

Develop a life-long love for programming with Python!

Yêu cầu

  • Access to a computer with an internet connection. Everything else we use in the course is publicly available and we'll guide you through getting it.
  • There are no other requirements, besides getting started!

Nội dung khoá học

24 sections

Intro to Python

36 lectures
Welcome to this course!
02:28
Overview of the course curriculum
02:48
Our Python coding environment
02:28
Writing our first code! Variables and printing
04:05
Variables and printing
4 questions
Community & Support
06:00
Numbers in Python
03:10
Calculating the remainder of a division
04:09
Numbers and Printing in Python
6 questions
Information before your first coding exercise
00:43
Exercise: variables and numbers
1 question
Solution: variables and numbers
00:38
Python strings
06:57
Python string formatting
07:08
Python string formatting
6 questions
Getting user input in Python
08:07
Python strings, formatting, and user input
3 questions
Exercise: communicating with users (Python 3.10)
1 question
Solution: communicating with users
00:26
Booleans and comparisons in Python
04:26
and & or in Python
09:20
Booleans and comparisons in Python
6 questions
Lists in Python
08:05
Tuples in Python
05:29
Sets in Python
02:45
Advanced set operations
04:51
Lists, tuples, and sets in Python
6 questions
Exercise: nearby friends (Python 3.10)
1 question
Solution: nearby friends
00:20
Python dictionaries
07:46
Python dictionaries
4 questions
Length and sum
02:47
Exercise: dictionaries (Python 3.10)
1 question
Solution: dictionaries
00:46
Joining a list
02:04
Conclusion and Python Fundamentals Cheatsheet
00:29

Python fundamentals

33 lectures
If statements in Python
12:21
If statements in Python
3 questions
While loops in Python
06:14
Exercise: a simple text menu (Python 3.10)
1 question
Solution: a simple text menu
00:35
For loops in Python
07:27
Destructuring syntax
03:19
Iterating over dictionaries
02:29
Break and continue
04:11
A couple more loop examples
00:27
Loops in Python
6 questions
Exercise: FizzBuzz (Python 3.10)
1 question
Solution: FizzBuzz
00:36
The else keyword with loops
03:48
Finding prime numbers with for loops
05:35
List slicing in Python
04:02
List comprehension in Python
09:02
Comprehensions with conditionals
06:16
Set and dictionary comprehensions
05:07
The zip function
02:42
The enumerate function
04:43
List comprehensions and slicing in Python
4 questions
Exercise: an improved lottery! (Python 3.10)
1 question
Solution: an improved lottery!
00:50
Functions in Python
04:10
Arguments and parameters
10:15
Functions and return values in Python
09:25
Default parameter values
07:26
Functions in Python
4 questions
Lambda functions in Python
06:08
First-class functions in Python
10:19
Conclusion and Cheatsheets for this section
00:17
Advanced functions in Python
4 questions

Milestone Project 1

7 lectures
Code for this section
00:12
Installing Python in your computer
02:18
Installing PyCharm in your computer
02:56
Creating our first PyCharm project
05:45
Setting up PyCharm font and display settings
02:44
Milestone Project Brief
07:27
Milestone Project Implementation Video
11:33

Object-Oriented Programming with Python

18 lectures
Intro to Object-Oriented Programming with Python
17:02
Exercise: your first Python class (Python 3.10)
1 question
Solution: your first Python class
00:18
More about classes and objects
09:17
Exercise: defining a method (Python 3.10)
1 question
Solution: defining a method
00:21
So... sum(), int(), str(), len(), what else is there?
00:36
Object-Oriented Programming
4 questions
Parameter naming in Python
03:54
Magic methods in Python
12:57
Exercise: magic methods in Python (Python 3.10)
1 question
Solution: magic methods in Python
01:00
Inheritance in Python
08:45
The @property decorator
04:19
Advanced Object-Oriented Programming
5 questions
@classmethod and @staticmethod in Python
07:27
More @classmethod and @staticmethod examples
12:06
@classmethod and @staticmethod
2 questions

Errors in Python

20 lectures
Code samples for this section
00:13
Intro to errors in Python
13:13
Built in errors in Python
17:58
Errors in Python
3 questions
Raising errors in Python
10:58
Exercise: raising an error (Python 3.10)
1 question
Solution: raising an error
00:27
Creating our own errors in Python
13:42
Exercise: raising our own custom errors (Python 3.10)
1 question
Solution: raising our own custom errors
00:33
Dealing with Python errors
09:00
Error handling in Python
3 questions
The on success block and re-raising exceptions
11:21
Some error problems
6 questions
Handling those pesky user errors!
11:18
Exercise: try-except-finally (Python 3.10)
1 question
Solution: try-except-finally
00:32
Debugging with Pycharm
16:37
Advanced error handling in Python
4 questions
Further reading
00:28

Files in Python

18 lectures
Code for this section
00:12
Files in Python
10:55
Python Exercise: copying files
20:38
Exercise: building a quiz system
1 question
Solution: building a quiz system
00:35
CSV files with Python
09:35
How to use the csv module to read and write CSV files more easily
00:30
JSON files with Python
17:33
Exercise: a CSV to JSON converter (Python 3.10)
1 question
Solution: a CSV to JSON converter
00:22
Using the with syntax in Python
05:01
Importing our own files
10:28
Python relative imports: children
15:18
Exercise: importing modules (Python 3.10)
1 question
Solution: importing modules
00:36
Python relative imports: parents
05:44
Import errors and running as a Python script
05:26
Further reading
00:29

Databases in Python & Milestone Project 2

20 lectures
Code for this section
00:12
Intro to Milestone Project 2
05:53
Milestone Project 2 Brief
00:25
Milestone Project with lists
17:52
Storing books in files
19:30
Using JSON instead of CSV
09:58
Intro to databases with Python
07:03
Using SQLite in Python
02:37
Some database jargon
04:08
Creating our books table using Python
05:49
Inserting books using Python
06:19
SELECT examples
03:12
Getting all our books
06:30
UPDATE and DELETE
02:14
Filtering with WHERE
04:59
Finishing the Milestone Project
07:46
Ordering and limiting
02:37
Developing our context manager in Python
10:11
Errors in context managers
06:55
Further reading
00:30

Type hinting in Python

2 lectures
Typing in Python
12:10
Further reading
01:44

Advanced built-in functions in Python

13 lectures
Generators in Python
12:39
Exercise: a prime number generator (Python 3.10)
1 question
Solution: a prime number generator
00:25
Python generator classes and iterators
08:15
Exercise: coding a generator class (Python 3.10)
1 question
Solution: coding a generator class
00:32
Iterables in Python
07:48
The filter() function in Python
08:43
The map() function in Python
05:39
any() and all() in Python
04:59
Section 9 Review
8 questions
So what other things evaluate to True or False?
00:36
Further reading
00:23

Advanced Python Development

22 lectures
Mutability in Python
11:49
Argument mutability in Python
12:16
Default values for parameters
05:03
Mutable default arguments (bad idea)
06:38
Argument unpacking in Python
11:16
Queues in Python
03:20
Some interesting Python collections
25:55
Exercise: Python collections (Python 3.10)
1 question
Solution: Python collections
00:28
Timezones
08:46
Dates and time in Python
12:46
Timing your code with Python
12:32
Regular expressions
08:28
Regex examples
13:36
Regex in Python
13:07
Exercise: secure file names using regex (Python 3.10)
1 question
Solution: secure file names using regex
00:23
Introduction to logging in Python
10:35
Logging to a file and other features
04:16
Higher-order functions in Python
09:37
The built-in itertools module
00:23
Further reading
00:12

Web Scraping with Python

29 lectures
Code for this section
00:18
Markup Languages: The Structure of HTML Code
07:32
Understanding HTML with BeautifulSoup
18:44
More complex HTML parsing
22:18
Structuring our parsing program better
05:40
Splitting HTML locators out of our Python class
04:03
Understanding HTML with the browser
06:35
Scraping our first website with Python
06:42
Milestone Project 3: A Quote Scraper
04:13
Quotes Project 2: Structuring a scraping app in Python
02:41
Quotes Project 3: Getting our locators
05:09
Quotes Project 4: Crafting our quote parser
04:51
Quotes Project 5: The quotes page
04:30
Quotes Project 6: Recap of the project
03:54
Milestone Project 4: A Book Scraper + application
05:01
Books Project 2: Recap of HTML locators
04:53
Books Project 3: Creating locators in Python
04:26
Books Project 4: Creating our page
03:27
Books Project 5: Creating our book parser
11:01
Books Project 6: Writing our app file
03:55
Books Project 7: Sorting the books
08:50
Books Project 8: Constructing our menu
06:02
ASIDE: The best way to write user menus
01:28
Books Project 9: Getting multiple pages
02:37
Books Project 10: Multiple pages in Python
05:26
Books Project 11: Getting the page count in Python
06:33
Books Project 12: Adding logging to our Python project
20:28
A word on scraping pages with JavaScript
03:14
A note on scraping and robots.txt
00:37

Browser Automation with Selenium

13 lectures
Introduction to this section
01:38
Code for this section
00:10
Review of our quotes scraping code
05:01
IMPORTANT: Selenium update
00:12
Using Chrome in our scraping code
06:26
Our new page locators
03:44
Interacting with dropdowns
04:07
Selecting tags
05:17
Searching for quotes
02:17
Encapsulating logic more simply
05:03
Adding some error handling
01:39
Implicit and explicit waits in Selenium
06:49
Adding waits to our program code
07:04

Asynchronous Python Development

25 lectures
Code samples for this section
00:20
A glossary of terms used in concurrency
00:57
The Dining Philosophers Problem
07:38
Processes and threads
09:24
The Python GIL
10:30
Example: threads in Python
12:40
Using Python concurrent.futures: the ThreadPoolExecutor
03:08
Don't kill threads!
01:48
Multiprocessing in Windows or ARM Macs
00:30
Multiprocessing in Python
07:24
Using Python concurrent.futures: the ProcessPoolExecutor
02:15
Dealing with shared state in threads
08:31
Queuing in threads with shared state
12:25
Using Python generators instead of threads
04:50
Our first single-threaded task scheduler in Python
06:04
Yielding from another iterator in Python
05:36
Receiving data through yield
09:34
The async and await keywords
06:10
Watch these talks for more explanations and examples!
01:52
Our asynchronous scraper
04:42
Making our first async request in Python
14:49
Getting multiple pages efficiently
10:23
Using async_timeout for security
01:46
Turning our book scraping project async
10:16
A note on HTTPS with Python and Mac OS X
03:12

Python on the console and managing project dependencies

7 lectures
Running Python in the console
08:49
Terminal video: running Python
05:50
Terminal video: what is a virtualenv?
10:43
Terminal video: navigating the terminal and using virtualenv
09:49
Terminal video: using Pipenv
09:38
Terminal video: Pipenv and virtualenv
04:05
Summary e-book of using Pipenv
00:09

Web Development with Flask

11 lectures
Setting up our project with Pipenv
05:42
Code samples for this section
00:16
Our first Flask endpoint
07:37
Returning information with Flask and Python
04:55
Rendering HTML with Flask and Python
06:24
Error pages and Jinja2 inheritance
11:39
Rendering forms with Flask and Python
14:21
Accessing POST form data with Flask
04:48
Putting our form in a single endpoint
03:02
Using Jinja2 for loops to create a nicer homepage
07:57
Adding navigation to our website
04:54

Interacting with APIs with Python

6 lectures
Code for this section
00:11
Signing up to OpenExchangeRates
01:41
Getting all exchange rates from the API
05:30
Creating a currency exchange library
07:25
Caching functions with functools
04:49
TTL caches with cachetools
02:04

Decorators in Python

12 lectures
A simple decorator in Python
06:07
Exercise: decorators (Python 3.10)
1 question
Solution: decorators
00:17
Using a @syntax
03:23
Functools wraps in Python
01:55
Decorating functions with parameters
04:56
Decorators with parameters
09:50
Functions that accept multiple arguments
05:29
Generic decorators for any function
03:54
Exercise: a generic access control decorator (Python 3.10)
1 question
Solution: a generic access control decorator
00:18
Multiple decorators for one function?
00:32

Advanced Object-Oriented Programming

10 lectures
Intro to multiple inheritance with Python
13:23
Exercise: multiple inheritance (Python 3.10)
1 question
Solution: multiple inheritance
00:19
Intro to ABCs in Python
08:06
The usefulness of ABCs
03:20
The relationship between ABCs and interfaces
06:49
Exercise: ABCs (Python 3.10)
1 question
Solution: ABCs
00:13
The property setter in Python
11:08
Pythonic vs. Non-Pythonic
00:19

GUI Development with Tkinter

17 lectures
Code for this section
00:05
Setting up Tkinter
02:47
Hello world in Tkinter
07:37
Labels and fields
05:22
Packing components
11:57
Using frames for different layouts
03:41
Starting our text editor project
00:56
Tkinter notebooks and creating files
03:32
Adding a menu to our application
04:12
Saving files to disk
07:59
Opening files
04:19
Binding shortcuts in Tkinter
04:42
Checking our tabs for unsaved changes
08:17
Confirming exit with unsaved changes
04:24
Closing individual tabs
05:21
Adding another menu
01:55
Adding a permanent scrollbar to our text area
04:22

Unit testing with Python

10 lectures
Introduction to this section
02:53
Code for this section
00:11
Testing functions
07:26
Testing for errors
02:37
Testing our multiplication function
09:08
Writing a printer class for testing
01:59
Testing classes
04:44
More Printer tests
09:26
Testing external libraries
09:53
Conclusion of this section
00:58

Algorithms and Data Structures

13 lectures
Presentation: queues, stacks, and complexity
09:40
A conference talk about Big-O
00:09
Presentation: binary search
06:47
Presentation: binary trees
05:53
Presentation: traversal of binary trees
07:12
Presentation: adding elements to a binary tree
07:00
Adding elements to a binary tree in Python
10:58
Recursion and inorder traversal in Python
14:35
Finding nodes in a tree with Python
03:21
How do you delete nodes from a binary tree?
09:29
Deleting nodes in code with Python
14:11
Deleting nodes with two children in code
18:44
Testing our binary tree!
02:37

Python libraries

7 lectures
Python libraries overview
16:35
Using pylint
12:40
Using yapf
07:42
Sending e-mails with smtplib
07:35
Sending e-mails with Mailgun
09:53
Creating a re-usable Mailgun library
07:11
Sneak peek: my IDE setup!
09:30

Python Reference / Refresher

38 lectures
Variables in Python
08:26
String formatting in Python
06:26
Getting user input
05:16
Lists, tuples, and sets
06:31
Advanced set operations
04:39
Booleans in Python
04:59
If statements in Python
08:17
The in keyword
02:02
If statements with the 'in' keyword
08:18
Loops in Python
11:07
List comprehensions
07:24
Dictionaries
08:31
Destructuring variables
08:28
Functions in Python
10:41
Function arguments and parameters
07:40
Default parameter values
03:54
Functions returning values
07:19
Lambda functions in Python
07:52
Dictionary comprehensions
04:01
Unpacking arguments
10:24
Unpacking keyword arguments
08:44
Object-Oriented Programming in Python
15:52
Magic methods: __str__ and __repr__
06:25
Class methods and static methods
14:03
Class inheritance
08:32
Class composition
06:08
Type hinting
05:08
How imports work in Python
09:33
Relative imports in Python
08:52
Errors in Python
12:47
Custom error classes
05:04
First-class functions
07:52
Simple decorators in Python
07:12
The 'at' syntax for decorators
03:33
Decorating functions with parameters
02:24
Decorators with parameters
04:50
Mutability in Python
06:03
Mutable default parameters (and why they're a bad idea)
04:27

Bonus Section

2 lectures
Thank you for taking the course
00:49
Bonus lecture
00:38

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.