Computer Architecture, Data Structures and Generic Programming Concepts
Use Terminal to Navigate and Perform Basic File Operations
Fundamental Programming and Implement Basic Data Structures With Python
Use Structural Pattern Matching With match-case Statements in Python 3.10
Create Different Array Data Structures like Lists, Tuples, Sets, Typed Arrays, Stacks, Queues and Priority Queues
Use Python REPL to Write Python Code From the Terminal and Test Ideas Easily.
Define Functions, Generator Functions and Decorator Functions.
Use Third-Party Packages and Create Virtual Environments for Projects.
Object-Oriented Programming With Python Classes and Objects
Reading and Writing Files And JSON Data With Python
Debug and Write Consistent and Efficient Python Programs
Welcome to this python course for beginners where you’ll become a Python Wizard! (python wizard is someone who can handle any problem like a boss and use the keyboard like a piano~ )
After completing this course you will be able to easily handle any programming project. You’ll be able to use core python features along with its hidden secrets to develop consistent and efficient python programs. You’ll also learn about the often forgotten basics and special features of programming and python in general.
The course can be divided into four broad levels –
-
Level 1 [ Geek ]
-
Computers architecture
-
Bits & Bytes of Data
-
What is Programming
-
Terminal
-
Level 2 [ Newbie ]
-
Level 3 [ Coder ] –
-
Data Types
-
Decision Control
-
Loops
-
Functions
-
Classes & Objects
-
Error Handling
-
Modules & Packages
-
Prankster Project
-
Level 4 [ Wizard ] –
-
String Formatting
-
Stack & Queue Data Structures
-
Shallow & Deep Copies
-
Packing & Unpacking Operators
-
Structural Pattern Matching
-
pip – python package manager
-
Virtual Environments
-
List Comprehensions
-
Iterables & Generators
-
Function Decor@tors
-
Object-Oriented Programming
-
Singletons
-
Special Methods
-
Operator Overloading
-
Iterable Classes
-
@property
-
Class __slots__
-
@dataclass
-
Metaclass
-
Type Hinting
-
File IO
-
Threading & Multiprocessing
-
Debugging
-
Tkinter GUI
-
Sedentary Alert Application
If you have some skills with python then you’re most welcome to brush up your skills and advance to the next level. Or even if you can use a computer only, that’s completely fine! We will start from the complete basics of general programming and become an expert in python programming. So you can gain something new as well!
Get Instant Notification of New Courses on our
Telegram channel.
Join me with the thousands of students who have started their programming journey because
CODERS ARE THE MORDERN WIZRADS!
Introduction
Curriculum Overview
How to Program Fast and Efficiently?
Generic Programming
Computer Architecture and Data Structures
Computers And Data
Programming Language
Programming Languages
Terminal
Navigation With Terminal
Exercise: Creating Backup
File Operations With Terminal
Terminal Commands
Internet
File Operation Commands
Community
Programming With Python
Setting-up Python in Our System
Python Syntax and Expressions
Python Basics
Printing Values On The Terminal
Python Syntax
Python Data Types
Python Data Types
Creating variables
Creating Lists
Creating Dictionaries
Console IO
Getting Input and Sending Output
Dictionary Slicing
if-else Statements
If-else Statements
if Statements
def Keyword
def Keyword
Defining Functions
Calling Functions
Newbie Programmer
The Container – Variables
Python Variables
Declaring Variables
Variables
Changing Variable Values
Invalid Variable Names
Casing Methods
Strings
The str Data Type
Escaping Errors
Multi-line strings
String Operations
String Slicing Syntax 1
String Slicing Syntax 2
String Methods
Greet User
Numbers
Numerical Data Types
Find the remainder
Numerical Operations
Finding Square Root
Mathematical Operations
Finding the cube
Booleans
True or False values
Booleans
True Values
Lists
The list Data Type
Creating Lists
Extracting List Elements
List Operations
List Methods
Extending a list
Tuples
Immutable Lists – tuple
Tuples
Tuple Conversion
Sets
Unordered Lists – set
Creating Sets
Set Operations
Set Methods
Set Mathematical Operations
Dictionary
The dict Data Type
Dictionary
Dictionary Operations
Dictionary Methods
Extending a dictionary
Finding The Amount
Decision Control
elif Statements
Checking Two or More Conditions
Comparison Operators
Joining Conditions Using and Keyword
Joining Conditions Using or Keyword
Calculate Salary
Conditional Operators
Membership Check
Ternary Operators
One Line If Statements
Match Case Statements
Matching an Expression With Different Cases
Replacing Elif Statements
Match Case Statements
While Loops
while Statements
Looping an instruction
fire( ) rounds argument
The break Keyword
The continue Keyword
Control While Loop’s Flow
For Loops
Iterating Over Sequence Data Types
Finding the total
Functions
Upgrading Our print( )
Optional Arguments or Parameters
Keyword Arguments
Arbitrary Positional Arguments – *args
print( )’s Arguments
log(padding) argument
Arbitrary Keyword Arguments
Function Arguments
The return Keyword
lambda Functions
Find the root of a number
Find the Perfect Square
Finding Negative Number
Classes
Class and Objects
Object Attributes
Methods or Object Functions
Creating Class
Inheritance
Inheriting Classes
The Cart Class
Error Handling
Handling Errors With try & except Statements
Custom Error Classes
Fix the Error: 1
Fix the Error: 2
Fix the Error: 3
Modules & Packages
Re-using Code With Modules
Importing Modules
Organizing Modules Into Packages
Project: Prankster
Prankster Program
Rigging-up The Prankster
VS Code
VS Code Settings and Themes
Revisiting Strings
Use of slashes in strings
Percent String Substitution
.format( ) method
Formatted Strings
String Formatting
Format Spec or Specifiers
Text Alignment Format Specifier
String Formatting With Format Spec
Multiplication Table
Arrays
Empty and One Element Arrays
One Element Tuple
Slicing With Steps
Reverse an Array
.sort(key) – Sorting Arrays of Class Objects
Sorting Arrays With Non-Numerical Data
The array Data Type
Stack Data Structure
Queue Data Structure
Collections Module
Quick Analysis With Count Class
Revisiting Dictionary
Dictionaries or Hash-tables
Dictionary Keys are Hashable
MappingProxyType
SimpleNamespace
namedtuple Class
Class Creation
.items( ) method
Shopping List
Iterators & Generators
List Comprehension
Comprehension Statements
if Statements in List Comprehension
List With Multiples of 5
Set and Dictionary Comprehensions
Flattening Lists
Generators
Chaining Generators
Generating Perfect Squares
Sorting Even & Odd Numbers
enumerate( ) function
zip( ) function
zip_longest( ) function
all( ) function
any( ) function
Removing Duplicates
Printing Result
itertools Module
count( )
cycle( )
repeat( )
combinations( )
permutations( )
product( )
combinations_with_replacement( )
chain( )
islice( )
compress( )
filter( )
filterfalse( )
accumulate( )
groupby( )
High Level Ops
is Operator
Shallow and Deep Copies
Creating Copies
Tuple Unpacking
Swap Value
Dictionary Unpacking
Unpacking Lists
Tuple Packing
Arguments Unpacking
Packing or Unpacking?
Walrus := Operator
Pipe | Operator
Dictionary Updating
Variable Scope
Python REPL
Structural Pattern Matching
Pipe Operator in Case Statements
Patter Matching
Pipe Operator in Patterns
if Statements in Case Statements
Packing Operator in Case Statements
Dictionary Matching
Object Matching
Functional Programming
Function Attributes
Pointer or Actual Name
Recursive Functions
Factorial Of Numbers
Decorator Functions
Creating Decor@tor Functions
functools.partial( )
Multiplier Functions
@wraps decorator
Finding Prime Numbers
Modules
Module Attributes
__main__ module
Writing Modules
pip – Python Package Manager
venv – Virtual Environments
Type Hinting
Hinting Data Types
Use Case
Type Hinting
Object Oriented Programming
object( )
Naming Conventions
Protected Variable Names
Private Variables
Class Variables and Instance Variables
__new__( ) method
Singleton
Course Class
Course created Class Variable
Operator Overloading
Iterable Classes
Convert Course To Iterable
Casting Type
Class __repr__
Course Class Representation
getattr( ) & setattr( )
getattr( ) Use Case
Sorting Course Class
__getitem__( ) & __setitem__( )
Accessing Course Students
@property decorator
Class Properties
Property setter and deleter
Class __slots__
Student Class
@dataclass decorator
Data Classes
Python Enums
Sentinels
@classmethod decorator
@staticmethod decorator
Course class’s created courses
Metaclass
Type of a Class
Creating Class With type( )
Metaclass
ABCMeta
File IO
open( ) file
Opening Text Files
Reading File
Reading Lines From Text Data
Writing File
Writing File Data
Data Preservation
State of Data
JSON Data
Extracting Data From Files
JSON as string
Reading JSON From Text File
Debugging
Bare except Statements
Fix the Error
ExitPhonebook( ) Exception
assert Statements
Asserting Tests
logging Module
Threading & Multi-processing
What is threading & multiprocessing?
threading Module
Thread With Arguments
ThreadPoolExecutor
Process Class
ProcessPoolExecutor
Tkinter
tkinter Module
Label and Button Widgets
Grid Layout
Entry Widget
.grid(columnspan) argument
OptionMenu Widget
ttk – Themed Widgets
Project: Sedentary Alert
Introduction
Project Setup
Interface: Root Window
Interface: Checkbutton
Interface: Dropdown
Loading JSON Data
Updating JSON Data
Notification (For Windows)
Notification (For Mac)
Sending Alerts
Threading
Application Executable
Bonus Lecture