- Welcome to this Course
- Overview of the course curriculum
- Our Python coding environment
- Writing our first code! Variables and printing
- Variables and printing
- Community & Support
- Numbers in Python
- Calculating the remainder of a division
- Numbers and Printing in Python
- Information before your first coding exercise
- Exercise: Variables and Numbers
- Solution: variables and numbers
- Python strings
- Python string formatting
- Python string formatting
- Getting user input in Python
- Python strings, formatting, and user input
- Exercise: communicating with users
- Solution: communicating with users
- Booleans and comparisons in Python
- and & or in Python
- Booleans and comparisons in Python
- Lists in Python
- Tuples in Python
- Sets in Python
- Advanced set operations
- Lists, tuples, and sets in Python
- Exercise: nearby friends
- Solution: nearby friends
- Python dictionaries
- Python dictionaries
- Length and sum
- Exercise: dictionaries
- Solution: dictionaries
- Joining a list
- Conclusion and Python Fundamentals Cheatsheet
The Complete Python Course | Learn Python by Doing
Learn Python 3 language's functions and go from a beginner to a professional with The Complete Python Course | Learn ...Read more
Online
₹ 799 4999
Quick Facts
particular | details | |||
---|---|---|---|---|
Medium of instructions
English
|
Mode of learning
Self study
|
Mode of Delivery
Video and Text Based
|
Course overview
The Complete Python Course | Learn Python by Doing online course is developed by Teclado by Jose Salvatierra, a Software Development For Everyone, Jose Salvatierra - Founder of Teclado and Software Engineer, Codestars by Rob Percival, Teaching the Next Generation of Coders, Rob Percival - Web Developer And Teacher and offered by Udemy Inc., a US-based online learning platform.
The Complete Python Course | Learn Python by Doing online certification is designed for both beginners and professionals to get a broader and deeper knowledge of python programming. The course will help the learners write professional python, develop websites, store data in a database so it's accessible and searchable.
The Complete Python Course | Learn Python by Doing syllabus includes topics such as strings, numbers, lists, dictionaries, tuples, sets, functions, lambdas, decorators, scope, mutability, handling and debugging errors, object-oriented programming, regex, database interaction, composition and inheritance, etc. which will be taught thought pre-recorded video lectures, articles, coding exercises, downloadables materials, and quizzes.
The highlights
- Certificate of completion
- Online course
- Self-paced course
- English videos with multi-language subtitles
- 35 hours of pre-recorded video content
- 30-day money-back guarantee
- Unlimited access
- Accessible on mobile devices and TV
Program offerings
- Certificate of completion
- Self-paced course
- English videos with multi-language subtitles
- 35 hours of pre-recorded video content
- 25 coding exercises
- 30-day money-back guarantee
- Unlimited access
- 57 articles
- 12 downloadable resources
Course and certificate fees
Fees information
certificate availability
Yes
certificate providing authority
Udemy
Who it is for
What you will learn
After completing The Complete Python Course | Learn Python by Doing certification course, learners will gain the knowledge to work with python 3, object-oriented programming, structuring their programs, and avoiding any pitfalls. Candidates will also understand complex topics like decorators and asynchronous programming, automate extraction using web scraping libraries like BeautifulSoup and Selenium, develop websites, build desktop applications with Python and Tkinter, create currency converter and interact with REST APIs.
The syllabus
Intro to Python
Python Fundamentals
- If statements in Python
- If statements in Python
- While loops in Python
- Exercise: a simple text menu
- Solution: a simple text menu
- For loops in Python
- Destructuring syntax
- Iterating over dictionaries
- Break and continue
- A couple more loop examples
- Loops in Python
- Exercise: FizzBuzz
- Solution: FizzBuzz
- The else keyword with loops
- Finding prime numbers with for loops
- List slicing in Python
- List comprehension in Python
- Comprehensions with conditionals
- Set and dictionary comprehensions
- The zip function
- The enumerate function
- List comprehensions and slicing in Python
- Exercise: an improved lottery!
- Solution: an improved lottery!
- Functions in Python
- Arguments and parameters
- Functions and return values in Python
- Default parameter values
- Functions in Python
- Lambda functions in Python
- First-class functions in Python
- Advanced functions in Python
Milestone Project 1
- Code for this section
- Installing Python in your computer
- Installing PyCharm in your computer
- Creating our first PyCharm project
- Setting up PyCharm font and display settings
- Milestone Project Brief
- Milestone Project Implementation Video
Object-Oriented Programming with Python
- Intro to Object-Oriented Programming with Python
- Exercise: your first Python class
- Solution: your first Python class
- Exercise: defining a method
- Solution: defining a method
- More about classes and objects
- So... sum(), int(), str(), len(), what else is there?
- Object-Oriented Programming
- Parameter naming in Python
- Magic methods in Python
- Exercise: magic methods in Python
- Solution: magic methods in Python
- Inheritance in Python
- The @property decorator
- Advanced Object-Oriented Programming
- @classmethod and @staticmethod in Python
- More @classmethod and @staticmethod examples
- @classmethod and @staticmethod
Errors in Python
- Code samples for this section
- Intro to errors in Python
- Built-in errors in Python
- Errors in Python
- Raising errors in Python
- Exercise: raising an error
- Solution: raising an error
- Creating our own errors in Python
- Exercise: raising out own custom errors
- Solution: raising our own custom errors
- Dealing with Python errors
- Error handling in Python
- The on success block and re-raising exceptions
- Some error problems
- Handling those pesky user errors!
- Exercise: try-except-finally
- Solution: try-except-finally
- Debugging with Pycharm
- Advanced error handling in Python
- Further reading
Files in Python
- Code for this section
- Files in Python
- Python Exercise: copying files
- Exercise: building a quiz system
- Solution: building a quiz system
- CSV files with Python
- How to use the csv module to read and write CSV files more easily
- JSON files with Python
- Exercise: a CSV to JSON converter
- Exercise: a CSV to JSON converter
- Solution: a CSV to JSON converter
- Using the with syntax in Python
- Importing our own files
- Python relative imports: children
- Exercise: importing modules
- Solution: importing modules
- Python relative imports: parents
- Import errors and running as a Python script
- Further reading
Databases in Python and Milestone Project 2
- Code for this section
- Intro to Milestone Project 2
- Milestone Project 2 Brief
- Milestone Project with lists
- Storing books in files
- Using JSON instead of CSV
- Intro to databases with Python
- Using SQLite in Python
- Some database jargon
- Creating our books table using Python
- Inserting books using Python
- SELECT examples
- Getting all our books
- UPDATE and DELETE
- Filtering with WHERE
- Finishing the Milestone Project
- Ordering and limiting
- Developing our context manager in Python
- Errors in context managers
- Further reading
Type hinting in Python
- Typing in Python
- Further reading
Advanced built-in functions in Python
- Generators in Python
- Exercise: a prime number generator
- Solution: a prime number generator
- Python generator classes and iterators
- Exercise: coding a generator class
- Solution: coding a generator class
- Iterables in Python
- The filter() function in Python
- The map() function in Python
- any() and all() in Python
- Section 9 Review
- So what other things evaluate to True or False?
- Further reading
Advanced Python Development
- Mutability in Python
- Argument mutability in Python
- Default values for parameters
- Mutable default arguments (bad idea)
- Argument unpacking in Python
- Queues in Python
- Some interesting Python collections
- Exercise: Python collections
- Solution: Python collections
- Timezones
- Dates and time in Python
- Timing your code with Python
- Regular expressions
- Regex examples
- Regex in Python
- Exercise: secure file names using regex
- Solution: secure file names using regex
- Introduction to logging in Python
- Logging to a file and other features
- Higher-order functions in Python
- The built-in itertools module
- Further reading
Web Scraping with Python
- Code for this section
- Markup Languages: The Structure of HTML Code
- Understanding HTML with BeautifulSoup
- More complex HTML parsing
- Structuring our parsing program better
- Splitting HTML locators out of our Python class
- Understanding HTML with the browser
- Scraping our first website with Python
- Milestone Project 3: A Quote Scraper
- Quotes Project 2: Structuring a scraping app in Python
- Quotes Project 3: Getting our locators
- Quotes Project 4: Crafting our quote parser
- Quotes Project 5: The quotes page
- Quotes Project 6: Recap of the project
- Milestone Project 4: A Book Scraper + application
- Books Project 2: Recap of HTML locators
- Books Project 3: Creating locators in Python
- Books Project 4: Creating our page
- Books Project 5: Creating our book parser
- Books Project 6: Writing our app file
- Books Project 7: Sorting the books
- Books Project 8: Constructing our menu
- ASIDE: The best way to write user menus
- Books Project 9: Getting multiple pages
- Books Project 10: Multiple pages in Python
- Books Project 11: Getting the page count in Python
- Books Project 12: Adding logging to our Python project
- A word on scraping pages with JavaScript
- A note on scraping and robots.txt
Browser Automation with Selenium
- Introduction to this section
- Code for this section
- Review of our quotes scraping code
- Downloading chromedriver
- Using Chrome in our scraping code
- Our new page locators
- Interacting with dropdowns
- Selecting tags
- Searching for quotes
- Encapsulating logic more simply
- Adding some error handling
- Implicit and explicit waits in Selenium
- Adding waits to our program code
Asynchronous Python Development
- Code samples for this section
- A glossary of terms used in concurrency
- The Dining Philosophers Problem
- Processes and threads
- The Python GIL
- Example: threads in Python
- Using Python concurrent. futures: the ThreadPoolExecutor
- Don't kill threads!
- Multiprocessing in Windows
- Multiprocessing in Python
- Using Python concurrent. futures: the ProcessPoolExecutor
- Dealing with shared state in threads
- Queuing in threads with shared state
- Using Python generators instead of threads
- Our first single-threaded task scheduler in Python
- Yielding from another iterator in Python
- Receiving data through yield
- The async and await keywords
- Watch these talks for more explanations and examples!
- Our asynchronous scraper
- Making our first async request in Python
- Getting multiple pages efficiently
- Using async_timeout for security
- Turning our book scraping project async
- A note on HTTPS with Python and Mac OS X
Python on the Console and managing project dependencies
- Running Python in the console
- Terminal video: running Python
- Terminal video: what is a virtualenv?
- Terminal video: navigating the terminal and using virtualenv
- Terminal video: using Pipenv
- Terminal video: Pipenv and virtualenv
- Summary e-book of using Pipenv
Web Development with Flask
- Setting up our project with Pipenv
- Code samples for this section
- Our first Flask endpoint
- Returning information with Flask and Python
- Rendering HTML with Flask and Python
- Error pages and Jinja2 inheritance
- Rendering forms with Flask and Python
- Accessing POST form data with Flask
- Putting our form in a single endpoint
- Using Jinja2 for loops to create a nicer homepage
- Adding navigation to our website
Interaction with APIs with Python
- Code for this section
- Signing up to OpenExchangeRates
- Getting all exchange rates from the API
- Creating a currency exchange library
- Caching functions with functions
- TTL caches with cache tools
Decorators in Python
- A simple decorator in Python
- Exercise: decorators
- Solution: decorators
- Using a @syntax
- Functools wraps in Python
- Decorating functions with parameters
- Decorators with parameters
- Functions that accept multiple arguments
- Generic decorators for any function
- Exercise: a generic access control decorator
- Solution: a generic access control decorator
- Multiple decorators for one function?
Advanced Object-Oriented Programming
- Intro to multiple inheritance with Python
- Exercise: multiple inheritance
- Solution: multiple inheritance
- Intro to ABCs in Python
- The usefulness of ABCs
- The relationship between ABCs and interfaces
- Exercise: ABCs
- Solution: ABCs
- The property setter in Python
- Pythonic vs. Non-Pythonic
GUI Development with Tkinter
- Code for this section
- Setting up Tkinter
- Hello world in Tkinter
- Labels and fields
- Packing components
- Using frames for different layouts
- Starting our text editor project
- Tkinter notebooks and creating files
- Adding a menu to our application
- Saving files to disk
- Opening files
- Binding shortcuts in Tkinter
- Checking our tabs for unsaved changes
- Confirming exit with unsaved changes
- Closing individual tabs
- Adding another menu
- Adding a permanent scrollbar to our text area
Unit Testing with Python
- Introduction to this section
- Code for this section
- Testing functions
- Testing for errors
- Testing our multiplication function
- Writing a printer class for testing
- Testing classes
- More Printer tests
- Testing external libraries
- Conclusion of this section
Algorithm and Data Structures
- Presentation: queues, stacks, and complexity
- A conference talk about Big-O
- Presentation: binary search
- Presentation: binary trees
- Presentation: traversal of binary trees
- Presentation: adding elements to a binary tree
- Adding elements to a binary tree in Python
- Recursion and inorder traversal in Python
- Finding nodes in a tree with Python
- How do you delete nodes from a binary tree?
- Deleting nodes in code with Python
- Deleting nodes with two children in code
- Testing our binary tree!
Python libraries
- Python libraries overview
- Using pylint
- Using yapf
- Sending e-mails with smtplib
- Sending e-mails with Mailgun
- Creating a re-usable Mailgun library
- Sneak peek my IDE setup!
Python Reference/ Refresher
- Variables in Python
- String formatting in Python
- Getting user input
- Lists, tuples, and sets
- Advanced set operations
- Booleans in Python
- If statements in Python
- The in keyword
- If statements with the 'in' keyword
- Loops in Python
- List comprehensions
- Dictionaries
- Destructuring variables
- Functions in Python
- Function arguments and parameters
- Default parameter values
- Functions returning values
- Lambda functions in Python
- Dictionary comprehensions
- Unpacking arguments
- Unpacking keyword arguments
- Object-Oriented Programming in Python
- Magic methods: __str__ and __repr__
- Class methods and static methods
- Class inheritance
- Class composition
- Type hinting
- How imports work in Python
- Relative imports in Python
- Errors in Python
- Custom error classes
- First-class functions
- Simple decorators in Python
- The 'at' syntax for decorators
- Decorating functions with parameters
- Decorators with parameters
- Mutability in Python
- Mutable default parameters (and why they're a bad idea)
Bonus Section
- Thank you for taking the course
- Bonus lecture: other courses and next steps