Files
learning/py/python-academy/opc/overview.md

81 lines
2.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Interactive Python Course
A comprehensive Python course designed to change the way you think about Python forever.
Together we will walk the path to understand how this language works and gain all the necessary skills to use it effectively at work.
## Module 0: Introduction
In this short module, we'll take a look at how this course's platform works and learn how to get the most out of it. And also get information about our community.
- [Introduction](./m0/introduction.md)
- Course structure
- Community
- Python installation
## Module 1: Fundamentals of Python I
This module is designed to give you a basic understanding of Python fundamentals and fill in potential gaps.
In this module, we will get acquainted with basic data types, variables, conditional statements, loops, and functions.
- Variables
- Scope of variables
- Basic data types
- Numeric data types
- String data types
- Boolean data type
- Functions
- Conditional statement. The if operator
- Complex data types
- Lists
- Tuples
- Sets
- Dictionaries
- Iterations and loops
## Module 2: Fundamentals of Python II
In this module, we will continue exploring the basic capabilities of Python.
We will cover working with libraries, files, introductory concepts of object-oriented programming, and basic exception handling.
This knowledge will complete the essential foundation for further programming in Python.
- Using libraries
- Built-in libraries
- Third-party libraries and pip
- Modules in Python
- Working with files
- Reading and writing text files
- Working with structured files (JSON, CSV)
- Object-oriented programming
- Classes and objects
- Attributes and methods
- Inheritance
- Encapsulation
- Polymorphism
- Lambda functions
- Exception handling
- Decorators
- Working with dates and time
- Type annotations
## Module 3: Advanced Python
In this module we move beyond the basics to the topics that let you build reliable, scalable, productionready applications.
We will cover testing, concurrency and async, database work, and project preparation & maintenance.
- Databases and Python
- SQLite in Python
- SQLAlchemy Core
- SQLAlchemy ORM
- Introduction to testing
- Pytest basics
- Pytest fixtures & parametrization
- Mocking & stubs
- The unittest module
- Coverage & CI
- Parallel and asynchronous programming
- Threading in Python
- Multiprocessing in Python
- Asynchronous programming
- Advanced asynchronous programming
- Concurrency and async: best practices