Get familiar with Python's advanced concepts, applications, modules, and web scraping techniques.
2.
An Intro to Argument Parsing Using argparse
3 Lessons
Look at using argparse for processing command-line arguments, adding arguments, and handling conflicting options.
3.
The Collections Module
7 Lessons
Examine the specialized container datatypes in Python’s collections module for enhanced functionality.
4.
Context Managers
4 Lessons
Grasp the fundamentals of context managers, contextlib, ExitStack, and reentrant context managers in Python.
5.
The Functools Module
5 Lessons
Dig deeper into Python's functools module for enhanced function manipulation and efficiency.
6.
All About Imports
6 Lessons
Tackle advanced import techniques to improve code organization and efficiency in Python.
Introduction To ImportsUsing "from module import something"Relative ImportsOptional and Local ImportsImport PitfallsQuiz Yourself on Python Imports7.
The importlib Module
6 Lessons
Master the steps to use the importlib module for dynamic imports and custom loaders.
importlib PackageDynamic ImportsModule Import CheckingImport From Source FileImport from github.comQuiz Yourself on importlib Module8.
Iterators and Generators
4 Lessons
Learn how to use iterators and generators in Python for efficient data processing.
Introduction to IteratorsCreating Our Own IteratorsGeneratorsQuiz Yourself on Iterators and Generators9.
The Itertools Module
7 Lessons
Get started with Python's itertools module to enhance iterators and data manipulation.
IteratorsIterators That Terminatecompress(), dropwhile() and filterfalse()groupby(), islice() and starmap()takewhile(), tee() and zip_longest()The Combinatoric GeneratorsQuiz Yourself on the Iterators Module10.
Regular Expressions
8 Lessons
Go hands-on with advanced regex concepts, from matching characters to compilation techniques.
Introduction to Regular expressionsThe Matching CharactersPattern Matching Using Search and Escape CodesCompiling the ExpressionsCompilation FlagsFinding Multiple InstancesBackslashes Are ComplicatedQuiz Yourself on Regular ExpressionsMini Project: Password Checker
Project
11.
The Typing Module
2 Lessons
Break down complex ideas on Python's typing module and type hints.
Introduction to Typing ModuleType Hints and Overloaded Functions12.
Python Built-ins
5 Lessons
Deepen your knowledge of Python built-ins for efficient and secure coding.
Introduction to Built-insFunctions of enumerate and evalFunctions of filter and mapHow zip Can Be Useful?Quiz Yourself on Python Built-insSee how it works: Unicode enhances string handling in Python 3 resolving encoding complexities.
Introduction to UnicodeEncoding / DecodingBuild on benchmarking techniques using `timeit`, profiling, memory_profiler, and profilehooks for performance analysis.
Introduction to BenchmarkingUse a decoratorIntroduction To profilersUse a line_profilerHow memory_profiler Can Be Used?Functions of profilehooksQuiz Yourself on Benchmarking15.
Encryption and Cryptography
5 Lessons
Step through Python's hashing, key derivation, and cryptographic operations with libraries like PyCryptodome.
Introduction to Encryption and CryptographyKey DerivationPyCryptoThe Cryptography PackageQuiz Yourself on Encryption and CryptographyWalk through advanced database interactions in Python using SQL, ODBC, MySQL, PostgreSQL, ORMs, and MongoDB.
Introduction to Databases in Pythonpyodbc and pypyodbcMySQLPostgreSQLObject Relational MappersNoSQL and MongoDBQuiz Yourself on DatabasesMini Project: Encryption, Decryption, and Database
Project
17.
The Super Built-in
4 Lessons
Examine the super built-in function, class inheritance improvements, and Method Resolution Order (MRO).
Introduction to Super Built-inPython 2 vs. Python 3Method Resolution Order (MRO)Quiz Yourself on Super Built-inBreak down the steps to manage and customize attribute access using descriptors.
Descriptors in Python and its ProtocolDescriptor ExamplesDeepen your knowledge of Python scope, including local, global, and nonlocal variables.
Scope in PythonLocal ScopeGlobal Scopenonlocal ScopeQuiz Yourself on Scope in PythonSimplify complex topics of web scraping, data extraction, BeautifulSoup usage, and Scrapy framework.
Introduction to Web ScrapingPreparing to ScrapeBeautifulSoupScrapyQuiz Yourself on Web ScrapingMaster the steps to interacting with Twitter, Reddit, Wikipedia, and other APIs using Python.
Introduction to APIsTwitterRedditWikipediaOther API Libraries22.
Working with FTP
2 Lessons
Learn how to use Python's ftplib for FTP file transfers, secure connections, and managing directories.
Introduction to FTP and ftplibDownloading and Uploading a File via FTP23.
The urllib Module
5 Lessons
Look at Python's urllib module for URL handling, fetching, parsing, and accessing URL permissions.
urllib module in Pythonurllib.requesturllib.parseurllib.robotparserQuiz Yourself on urllib Module24.
The doctest Module
5 Lessons
Examine the doctest module's use for validating code with docstring examples and option flags.
Introduction to doctest ModuleWorking of doctest ModuleCheck Your Test With a Text FileOption Flags and DirectivesQuiz Yourself on doctest Module25.
The unittest Module
8 Lessons
Break down complex ideas of Python's unittest module for effective, automated testing.
unittest Module in PythonA Simple Example of unittest ModuleCommand-Line InterfaceCreating a More Complex TestCreating Test SuitesHow to Skip TestsIntegrating with doctestQuiz Yourself on unittest ModuleSolve problems in using Python's mock module to simulate interactions and prevent side effects.
mock module in PythonSimple Examples of mock ModuleSide Effects of mock ModuleAutospeccing and PatchQuiz Yourself on mock Module27.
An Intro to coverage.py
2 Lessons
Investigate measuring test coverage and generating reports with coverage.py tool.
Functions of coverage.pyAdditional Information28.
The asyncio Module
7 Lessons
Master the steps to leveraging asyncio for asynchronous programming, using coroutines, async/await, and task scheduling.
Introduction to asyncio Moduleasync and awaitA Bad Coroutine ExampleA Better Coroutine ExampleScheduling CallsFunctions of tasks in the asyncio ModuleQuiz Yourself on asyncio Module29.
The Threading Module
6 Lessons
Learn how to use Python's threading module for multitasking, synchronization, and thread communication.
Introduction to Threading ModuleLocks and SynchronizationTimersOther Thread ComponentsThread CommunicationQuiz Yourself on Threading Module30.
The Multiprocessing Module
5 Lessons
Get started with Python's multiprocessing for parallel execution, process control, and communication.
Multiprocessing in PythonLocks and LoggingThe Pool ClassProcess CommunicationQuiz Yourself on Multiprocessing Module31.
The concurrent.futures Module
3 Lessons
Work your way through using Python’s concurrent.futures for asynchronous execution and avoid deadlocks.
concurrent.futures moduleCreating a PoolDeadlocksMini Project: Wikipedia and Coroutine
Project
Grasp the fundamentals of advanced Python concepts and solidify your learning.
Final Remarks