Skip to content

tech-balaji-chennai/pythonic_knowledge

Repository files navigation

pythonic_knowledge

This is a complete knowledge of python programming. Knowledge consists of following:

I) Problem Solving

A) Problem Solving Tools

  1. Algorithm 1.1) Algorithmic Solution 1.2) Algorithmic Analysis 1.2.1) Priori Estimates 1.2.2) Posteriori Testing 1.3) Algorithmic Complexity And Efficiency 1.3.1) Time Complexity 1.3.2) Space Complexity 1.3.3) Asymptotic Notations 1.3.3.1) Worst Case 1.3.3.2) Best Case 1.3.3.3) Average Case 1.3.3.4) Determination Of Algorithmic Efficiency 1.4) Qualities, Properties, Characteristics Of Good Algorithm 1.5) Building Blocks Of Algorithm 1.5.1) Statement 1.5.2) State 1.5.3) Control Flow 1.5.3.1) Sequence 1.5.3.2) Selection 1.5.3.3) Iteration 1.5.3.4) Functions 1.5.3.5) Modules 1.5.3.6) Classes And Objects 1.6) Algorithmic Problem Solving 1.7) Example Algorithm

  2. Flow Chart 2.1) Rules For Drawing Flow Chart 2.2) Advantages, Disadvantages Of Flow Chart 2.3) Example Flow Chart

  3. Pseudo Code 3.1) Guidelines For Writing Pseudo Code 3.2) Common Keywords Used In Pseudo Code 3.3) Syntax Of Pseudo Code 3.4) Advantages, Disadvantages Of Pseudo Code 3.5) Example Pseudo Code 3.6) Difference Between Algorithm, Flow Chart, Pseudo Code

  4. Program, Programming Language 4.1) Types: 3 4.1.1) Machine, Binary (Or) Low Level Language 4.1.2) Assembly (Or) Intermediate Language 4.1.3) High Level Language (Or) Translator 4.1.3.1) Compiler 4.1.3.2) Interpreter 4.1.4) Difference Between High-Level Language, Low Level Language 4.1.5) Difference Between Compiler, Interpreter 4.2) Computer System Level Hierarchy 4.3) Classification Of High Level Language (Basis: Application) 4.3.1) Commercial Programming Language 4.3.2) Scientific Programming Language 4.3.3) Special Purpose Programming Language 4.3.4) General Purpose Programming Language 4.4) Classification Of High Level Language (Basis: Design Paradigm) 4.4.1) Markup Programming Language 4.4.2) Concurrent (Or) Parallel Programming Language 4.4.3) Scripting Programming Language 4.4.4) Compiled Programming Language 4.4.5) Interpreted Programming Language 4.4.6) Procedural Programming Language 4.4.7) Functional (Or) Modular Programming Language 4.4.8) Object Oriented Programming Language 4.5) Python Info, Example Program 4.5.1) Hello Python

B) Algorithms

  1. Algorithmic Complexity, Efficiency 0.1) Space Complexity - Getting Size Of Objects Using getsizeof() Method From sys Module 0.2) Time Complexity - To Calculate The Execution Time Of A Code Using Time Module

  2. Searching Algorithms 1.1) Linear Search 1.2) Binary Search

  3. Sorting Algorithms 2.1) Selection Sort 2.2) Bubble Sort 2.3) Insertion Sort 2.4) Heap Sort 2.5) Quick Sort 2.6) Merge Sort

  4. Divide And Conquer Algorithms

  5. Dynamic Programming Algorithms 4.1) Top-Down Approach 4.2) Bottom-Up Approach

  6. Greedy Algorithms

  7. Graph Traversals Algorithms 6.1) Breadth-First Search Algorithm (BFS) 6.2) Depth-First Search Algorithm (DFS)

C) Data Structures

  1. Built-In Data Structures 1.1) File 1.2) String 1.3) List 1.4) Tuple 1.5) Set 1.6) Frozen Set 1.7) Dictionary 1.8) Collections 1.9) Pointers In Python

  2. User-Defined Data Structures 2.1) Linear Data Structures 2.1.1) Array 2.1.1.1) 1D Array, 2D Array, 3D Array (Matrices) (ND Array) Using array Module 2.1.1.2) 1D Array, 2D Array, 3D Array (Matrices) (ND Array) Using numpy Module 2.1.2) Linked List 2.1.2.1) Singly Linked List 2.1.2.2) Doubly Linked List 2.1.2.3.1) Circular Singly Linked List 2.1.2.3.2) Cicular Doubly Linked List 2.1.3) Stack 2.1.3.1) Stack Using Array 2.1.3.2) Stack Using Linked List 2.1.4) Queue 2.1.4.1) Queue Using Array 2.1.4.2) Queue Using Linked List 2.1.5) Hash Table 2.1.6) Hash Map 2.2) Non-Linear Data Structures 2.2.1) Tree 2.2.1.1) BST 2.2.1.2) Ternary Tree 2.2) Graph 2.3) DataFrame Using pandas Library

II) Programming Paradigms

A) Procedural Programming

  1. Input And Output Functions 1.1) Output Function - print() 1.2) Input Function - input()

  2. Physical Line, Logical Line, Statement 2.1) Physical Line 2.1.1) Executable Code Line 2.1.2) Comment Line 2.1.3) Blank Line 2.1.4) Escape Characters Line 2.2) Logical Line 2.2.1) Single Physical Line Statement 2.2.2) Multiline Statement (Spanning Multiple Physical Lines) 2.2.3) Block (Or) Suite 2.2.4) String Literal Line 2.3) Statement

  3. Tokens 3.1) Identifiers (Variables) 3.1.1) Variables, Rules 3.1.2) Multi Words Name 3.1.3) Type Casting 3.2) Keywords 3.2.1) Value Keywords 3.2.2) Operator Keywords 3.2.3) Branching Keywords 3.2.4) Iteration Keywords 3.2.5) Structure Keywords 3.2.6) Returning Keywords 3.2.7) Variable Handling Keywords 3.2.8) Import Keywords 3.2.9) Exceptional Handling Keywords 3.2.10) Asynchronous Keywords 3.2.11) Soft Keywords 3.3) Delimiters 3.4) Datatypes (Literals) 3.4.1) Numeric 3.4.2) Boolean (Or) Logical 3.4.3) Binary 3.4.4) NoneType 3.4.5) Ordered Collection 3.4.5.1) String 3.4.5.2) List 3.4.5.3) Tuple 3.4.5.4) Range 3.4.6) Unordered Collection 3.4.6.1) Sets 3.4.6.1.1) Set 3.4.6.1.2) Frozen Set 3.4.6.2) Mapping 3.4.6.2.1) Dictionary 3.4.7) Type Conversion 3.5) Operators

  4. Control Flow 4.1) Sequential Statement 4.2) Alternative (Or) Branching Statements 4.2.1) Selection (Or) Conditional Branching Statements 4.2.1.1) Simple if 4.2.1.2) Alternative if..else.. 4.2.1.3) Chained if..else.. 4.2.1.4) Nested if..else.. 4.2.1.5) Match Case 4.2.2) Jump (Or) Unconditional Branching 4.2.2.1) break statement 4.2.2.2) continue statement 4.2.2.3) pass statement 4.3) Looping Statements 4.3.1) for loop 4.3.2) while loop 4.3.3) nested loops 4.3.3.1) nested for 4.3.3.2) nested while 4.3.3.3) nested for-while 4.3.3.4) nested while-for

  5. Exceptional Handling 5.1) Statements, Errors 5.1.1) Logical 5.1.2) Compile Time 5.1.3) Run Time 5.2) Handling Blocks 5.2.1) try 5.2.2) except 5.2.3) finally 5.2.4) custom except 5.2.5) raise, standard exceptions 5.2.6) assert

  6. Special Variable - name, main

Example Programs: odd/even, +ve/-ve, largest/smallest of 3, factorial, fibonacci, prime/composite

B) Functional, Modular Programming

  1. Functions 1.1) Function Call 1.2) Function Definition, Function Prototypes 1.2.1) Parameters 1.2.1.1) Formal Parameter 1.2.1.2) Actual Parameter 1.2.2) Arguments 1.2.2.1) Fixed Length Arguments 1.2.2.1.1) Positional 1.2.2.1.2) Keyword 1.2.2.1.3) Default 1.2.2.2) Variable Length Arguments 1.2.2.2.1) Non-Keyword Variable Length Arguments 1.2.2.2.2) Keyword Variable Length Arguments 1.2.3) Return Statement 1.2.4) DocString Statement 1.3) Parameter Passing Methods 1.3.1) Call By Value 1.3.2) Call By Reference 1.4) Scope Of Variables (LEGB Rule) 1.4.1) Global 1.4.2) Local 1.4.3) Enclosed 1.4.4) Built-In 1.5) Function Composition 1.6) Types Of Functions 1.6.1) Built-In Functions 1.6.2) Normal (Or) User Defined 1.6.3) Nested 1.6.4) Recursive 1.6.5) Lambda (filter, map reduce) 1.6.6) Wrappers (Decorators) 1.6.7) Generators

  2. Modules 2.1) Import Statements 2.1.1) import 2.1.2) import.. as.. 2.1.3) from.. import.. 2.1.4) from.. import.. as 2.2) Built-In 2.2.1) math 2.2.2) random 2.2.3) os 2.2.4) sys 2.2.5) calendar 2.2.6) time 2.2.7) datetime 2.2.8) string 2.2.9) numbers 2.3) User Defined

  3. Packages 3.1) Import Statements 3.2) Built-In 3.3) User Defined

  4. Libraries 4.1) Import Statements 4.2) Built-In 4.3) User Defined 4.4) Popular Libraries 4.4.1) numpy 4.4.2) pandas 4.4.3) matplotlib 4.4.4) seaborn 4.4.5) scikit-kearn 4.4.6) tensorflow 4.4.7) keras 4.4.8) pytorch 4.4.9) opencv 4.4.10) scipy 4.4.11) nltk 4.4.12) chatterbot 4.4.13) selenium 4.4.14) django 4.4.15) flask 4.4.16) fastapi 4.4.17) pygame 4.4.18) kivy

  5. Package Manager, PIP, Commands

  6. Applications 6.1) Web Development 6.2) Data Science And Artificial Intelligence (DSAI) 6.3) Natural Language Processing (NLP) 6.4) Computer Vision (CV) 6.5) Chatbot 6.6) Automation 6.7) Graphical User Interface (GUI) 6.8) Ethical Hacking (EH)

C) Object Oriented Programming

  1. Classes 1.1) Class Definition 1.2) Class Creation, Namespace, Class Members 1.2.1) Attributes 1.2.2) Methods (Types)

  2. Objects 2.1) Object Instantiation (Creation) 2.2) Object Members

  3. Object Lifecycle Methods 3.1) Constructors 3.2) Destructors

  4. Encapsulation (Access Specifier) 4.1) public 4.2) private 4.3) protected

  5. Abstraction 5.1) Abstract Class 5.2) Abstract Method 5.3) Interfaces

  6. Inheritance 6.1) Single 6.2) Multiple 6.3) Multilevel 6.4) Hierarchical 6.5) Hybrid 6.6) super method 6.7) isinstance method 6.8) MRO

  7. Polymorphism 7.1) Duck Typing 7.2) Operator Overloading 7.3) Method Overloading 7.4) Method Overriding

  8. Magical Methods

  9. Iterators

III) Programming Models

A) Concurrent (Or) Parallel Programming

  1. Process, Threads

B) Network Programming

  1. Socket Programming For Client-Server Interaction

Releases

No releases published

Packages

No packages published

Languages