This repository contains a comprehensive Python tutorial designed to take you from zero programming knowledge to a Python hero. Whether you're a complete beginner or someone looking to brush up on their Python skills, this tutorial will provide you with the necessary tools and knowledge.
-
- Install Python and setting up the environment
- Basic syntax, variables, and data types
- Input and output functions
-
- Understand Python’s approach to objects, names, and namespaces.
- Explore lists, tuples, strings, dictionaries, and sets
- Use control structures: conditional statements(if,elif, else), loops(for, while), break, continue and pass statements.
- Explore collections module and comprehension techniques
-
Functional Programming in Python
- Create simple function interfaces using advanced arguments types, including keyword arguments and variadic arguments.
- Create functional programs, using map/filter, reduce, lambdas, iterators, and generators
- Create decorators, high-level tools to transform functional behavior.
-
Object Oriented Programming in Python
- Trace the details of instantiation and attribute resolution on class objects and instance objects.
- Create classes with custom methods, including initializers and decorated properties.
- Analyze object-based design patterns, including polymorphism and inheritance.
-
- Understand the principles of files and file systems, in order to open files for reading or writing.
- Create programs that can read data from or write data to a plain text file.
- Create programs that can read or write JSON data.
- Create programs that can read or write CSV data.
-
- Understand modular programming to reuse functional units of code.
- Organize multiple modules as a package.
- Relative and absolute imports of modules and packages.
-
- Working with standard python libraries
- Install and use open source third party libraries to solve complex problems.
- Learn how to use virtual environments to maintain clear dependency states during development.
-
Unit Testing & Exception Handling
- Understand Unit Testing and write test cases using standard python library unittest
- Use third party library-pytest for writing simple and powerful test cases.
- Exception handling using try, except and finally
- Writing Custom Exceptions
-
- PEP standards to write clear, compliant code.
- Understand core Pythonic principles to write code that can scale.
- Explore pylint library