A-Z of Python Essentials in one place!
Table of contents
- Basics
- OOPS
- Sorting Algorithms
- Graphics
- Arcade Module
- Random Module
- SMTP Module
- Errors And Exceptions
- File Handling
- Linked List
- Thread Programming
- Socket Programming
- Magic Methods
- Coroutines
- Regular Expressions
- Numerical Computation
- Statistics
- Algorithms
- Comprehensions
- Generators
- Databases using SQLite3
- Graphs
- Descriptors
- Software Design Pattern
- Meta Programming
- AI and ML
- Miscellaneous
- Contributing
- License
Most of these programs run by just executing them through cmd or by double tapping them. However, if you want to modify them on an IDE, open the folder(topic) seperately instead of opening PyHub. This is done mainly to load assets present in the sub-folder.
Python Basics for Beginners.
• Hello World.py | A simple Hello World program. • Numbers.py | Int, Float and Complex Numbers. • Variables.py | Variables in python. • CondStatements.py | Conditional Statements. • Loops.py | For And While Loops. • Statements.py | Break and Continue Statements. • Strings.py | Strings and String Functions. • Sets.py | Implementing Sets. • BoolVar.py | Understanding Boolean Variables. • Lists.py | Implementing Lists. • Dictionary.py | Implementing Dictionary. • Functions.py | Creating and Using Functions. • Arrays.py | Implementing 1D and 2D Arrays. • Copy.py | Understanding Normal, Shallow and Deep Copy. • Operators.py | Covered all python Operators. • Tuples.py | Implementing Tuples.
Implementation of Object-oriented programming System(OOPS) Concepts in Python.
• Abstract.py | Creating an Abstract Class and Method. • ClassAtr.py | Accessing Class Attributes. • Constructors.py | Understanding Constructors in Python. • DocStrings.py | Using Python's documentation strings. • MainFunc.py | Understanding the use of Main Function. • MethodOverloading.py | Method Overloading in Python. • Objects.py | Understanding Objects in OOPS. • OperatorOverloading.py | Operator Overloading in Python. • Polymorphism.py | Implementing Polymorphism in Python.
• Inherit.py | Basic Understanding of Inheritance in Python. • Hierarchical.py | Hierarchical Inheritance • Hybrid.py | Hybrid Inheritance. • Multi-Level.py | Multi-Level Inheritance
• LibMod.py | Using a Standard Python Library Module. • Operations.py | A program that is to be imported. • Importing.py | Importing Operations.py.
• Instance.py | Understanding Instance Methods. • Static.py | Understanding Static Methods • Class.py | Understanding Class Methods
Collection of all different sorting algorithms.
• BogoSort.py | Bogo Sort. • Bubblesort.py | Bubble Sort. • CountingSort.py | Counting Sort. • HeapSort.py | Heap Sort. • InsertionSort.py | Insertion Sort. • MergeSort.py | Merge Sort. • QuickSort.py | Quick Sort. • RadixSort.py | Radix Sort. • RecursiveBubbleSort.py | Bubble sorting using recursion. • SelectionSort.py | Selection Sort. • ShellSort.py | Shell Sort. • TimSort.py | Tim Sort.
Utilising Python's Tkinter module to build Graphical User Interface(GUI)
• Widgets.py | Understanding and using various Widgets. • Buttons.py | Creating and Modifying Buttons. • Frame.py | Setting up Frames. • Window.py | Creating a GUI Window using Tkinter Module. • Images.py | Importing Images onto the window through Labels. • Canvas.py | Using the canvas to create Arcs and Polygons. • TextField.py | Creating a text field. • CheckBox.py | Implementing Check Boxes. • RadioButtons.py | Implementing Radio Buttons. • Events.py | Building Event Triggers. • Dialogbox.py | Understanding and Creating Dialog Boxes. • Menus.py | Understanding and Implementing Menus • MessageBox.py | Creating different types of Message Boxes. • Simple Calculator.py | Creating a GUI based Calculator.
Creating Still Images and Animations, Moving Objects and more using Python's Arcade Module
• Smiley.py | Creating a Smiley using the Arcade Module. • Still Imaging.py | Creating a Still 2D image. • Snow.py | Creating Snow particle effect. • Timer.py | A countdown timer that notifies when countdown reaches zero. • Clock.py | Building a simple analog clock. • Movement.py | Moving a 2D object in an arcade window.
Using the Random module in python to generate numbers or pick elements in Lists.
• RandomFn.py | Understanding the random function. • SeedFn.py | Using and understanding the seed function. • Range.py | Using randint and randrange. • Lists.py | Picking an element from a list in random.
Using the SMTP Module to send E-mails.
• SendingEmails.py | Sending a plain text message through Gmail. • HTML_Emails.py | Sending HTML based messages via Gmail. • Attachements.py | Attaching .txt files to Email.
Learning about various Python Errors and different ways to handle them.
• Try and Except.py | Understanding the Try and Except Blocks. • Else Block.py | Using the Else block for Error Handling. • Own Exceptions.py | Creating our very own Error Exceptions. • Finally Clause.py | Implementing and Understanding the Finally Clause.
Reading and Writing Files in Python.
• Reading.py | Reading from a file. • Renaming.py | Renaming a file using the OS module. • Creating.py | Creating a new file and understanding modes in open fn. • Writing Dictionary.py | Writing a Dictionary into a JSON or Pickle File. • Append.py | Using Append mode to write into files. • Copying.py | Copying data from one file to another. • With Statement.py | Understanding and using the with statement • Writing.py | Understanding the Write only mode.
Understanding Single and Doubly Linked List in Python.
• Creation.py | Creating and Traversing a Single Linked List. • Insertion.py | Inserting at beginning,ending and between nodes. • Deletion.py | Deleting a node from Single Linked List. • DoublyLinkedList.py | Complete Implementation of a Single Linked List.
• Creation.py | Creating and Traversing a Doubly Linked List. • Insertion.py | Inserting at beginning, ending and between nodes. • Deletion.py | Deleting a Node in Doubly Linked List. • DoublyLinkedList.py | Complete Implementation of Doubly Linked List.
Understanding Thread Programming in Python.
• Main Thread.py | Understanding and renaming the main thread. • Thread using Function.py | Threading a function. • Multi-Function Threading.py | Threading multiple functions. • Extending Thread Class.py | Threading a class and a function within the class. • Without Extending Thread.py | Threading without extending thread class. • Multi-Threading.py | Threading the same function multiple times. • Sleep.py | Understanding the sleep function . • Flight Reservation.py | A sample program to understand need for threading. • Synchronization With Locks.py | Synchronising thread programs.
A Simple GUI based Chat Room Application.
• Server.py | Building a server using sockets in python. • Client.py | Creating a client side to access the server. • Sending Files.py | Sending files through sockets. • Receiving Files.py | Requesting and receiving files from server. • Chat Room Application : • Server Side.py | A server side to recieve and send messages. • Client Side.py | A GUI based client side.
Overlaoding various types of operators using Dunder or Magic Methods
• Intro.py | Understanding uses of magic methods. • Binary Operators.py | Binary Operator overloading using magic methods. • Comparison Operators.py | Comparison operators overloading. • Extended Assignment.py | Overloading extended assignmenet operators. • Unary Operators.py | Overloading Unary Operators. • Example.py | Concatenating dictionary objects. • repr method.py | Created a Length Convertor using magic methods.
Understanding, Creating and Using Coroutines in Python.
• Creating.py | Creating and understanding coroutines. • Pipelining.py | Pipelining in couroutines. • Closing.py | Creating and closing a coroutine.
Understanding various functions and operations of the re module in python.
• Regular Functions.py | Understanding and using all the different functions in the re module. • Match Function.py | Using the match function and all its special characters. • Matching Vs Searching.py | Finding the difference between matching and searching. • Greedy Vs Non-Greedy.py | Understanding the difference between greedy and non greedy functions. • Modifiers.py | Learning the uses of different flags\modifiers. • Password Validator.py | A simple example program to validate passwords using regex.
Understanding the various functions and operations of the NumPy Library in Python.
• Array Operations.py | NumPy Operations for Array manipulations. • Numerical Computations.py | Mathematical and Numerical Computations. • Numpy.ipynb | Basic functions and operations using Numpy
• Sin.py | Sin Graph. • Cos.py | Cos Graph. • Tan.py | Tan Graph. • Comparing Sin and Cos.py | Comparing the Sin and Cos Graphs. • Square Root.py | Square Root Graph. • Exponent.py | Exponent Graph.
• Bitcoin.ipynb | Bitcoin gross product analysis. • Winequality.ipynb | Wine quality frequency graph.
• PyTorch.ipynb | Brief introduction to PyTorch.
Implementing various mathematical statistics theorems using Python.
• BinomialProbability.py | Compute binomial porbabilities. • CentralLimitTheorem.py | Implementation of central limit theorem. • CoinChangePossibilities.py | Find out possibility of coin change. • Mean_Median_Mode.py | Calculate mean, mode and medium. • NormalDistribution.py | Calculate normal distribution.
Understanding the different uses of list and dictionary comprehensions.
• List.py | List Comprehensions. • Dictionary.py | Dictionary Comprehensions.
Understanding the functions and uses of Python Generators.
• Yield Statement.py | Understanding the uses of Yield Statements. • Generators.py | Exploring generators and their functions. • Generator Expressions.py | Using Generator expressions.
Using Python's SQLite3 module to create, insert and manipulate data in a database.
• Creating a Database.py | Creating a Database using SQLite3. • Creating Attributes.py | Creating columns for the table. • Extracting Data.py | Extracting data from a table. • Inserting Records.py | Entering data into a table. • Order By Clause.py | Sorting data in a table. • Where Clause.py | Extracting relevant data using where clause. • IN and NOT IN Clause.py | Understanding the In and Not In clause. • Distinct Data.py | Obtaining distinct values from the table. • Like Clause.py | Extracting relevant data using like clause. • Limit Clause.py | Understanding the limit and ofset clauses . • Delete Clause.py | Deleting records or columns from a table. • Updating Data.py | Updating records in the table. • GLOB Operator.py | Understanding and implementing the glob operator. • Aggregate Functions.py | Finding average, sum, maximum and other values. • Alter Table.py | Altering contents of a table.
Using the Matplotlib Library in Python to draw different types of graphs.
• Line Graph.py | Drawing a Line graph. • Multiple Line Graphs.py | Drawing multi lined graph for comparison. • Bar Chart.py | Creating a bar graph. • Histogram Graph.py | Drawing a Histogram Graph. • Pie Chart.py | Building a pie chart.
Using python's descriptors to create managed attributes.
• Get, Set and Del.py | Understanding the get,set and del descriptors. • Calling a descriptors.py | Different methods of a calling a descriptor.
Using python's to implements examples of differents software design patterns
• Singleton.py | Implementation and some tests with example of use of Singleton Class Instance.
Understanding and utilising function decorators
• Fn Inside a Fn.py | Creating a nested function. • Passing Fn as Arg.py | Passing a function as an argument to another function. • Fn returning Fn.py | Returning a function in a function. • Encapsulating nested fn.py | Function to call a nested function to provide data. • Adding new attributes.py | Adding new attributes using decorators to an existing function.
Using Class decorators
• Class Decorators.py | Understanding class decorators in Python.
Creating and understanding metaclasses in OOPS
• Meta Classes.py | Understanding and using meta classes.
Using Python for different algorithms.
• Kadane's Algorithm.py | Implementation of Kadane's Algorithm in python • Prim's Algorithm.py | Implementation of Prim's Algorithm in python
Implementing AI and ML algorithms in Python and exploring various problems!
• LinearRegr.ipynb | Linear Regression implementation in python • NaiveBayes.ipynb | Naive Bayes classificaion algorithm in python • SVM.ipynb | Support Vector Machine algorithm in python • 8Queen.py | Solving 8 Queet problem. • Water-jug.py | Solution for Water jug problem. • Multi_Layer_Perceptron.py | Implementing Multi Layer Perceptron
Implementing several different ciphers and looking into different algorithms for encryption and decryption.
• Caesar_cipher.py | Implementation of Caesar cipher. • Hill_Cipher.py | Implementation of Hill Cipher. • Rail_Fence_Cipher.py | Implementation of Rail fence cipher. • RSA_Algo.py | Looking into the RSA algorithm. • StringEncrypt.py | Encrypt and Decrypt strings using fernet and RSA modules.
A random collection of program with various functionalities.
• Armstrong.py | Check if the number is an Armstrong number or not. • Batch file rename.py | Rename several files at once. • BulkGit.py | Commit and push all changes of all repositories in a directory. • Case Swapper.py | creates an alternating upper and lower case pattern of the string. • Check_even_odd.py | Check if number is even or odd. • Clipboard.py | Copy message to clipboard. • Colours.py | Add colours to your CLI script. • Creating Presentations.py | Creating powerpoint presentation using Python. • Date and time.py | Datetime manipulation using various modules. • DiscordDmDelete.py | Automate deleting DM messages on Discord.. • Discord_Automation.py | Automate everything from creating a server to sending personalized messages. • Excel manipulation.py | Manipulate and use Excel files using Python. • Face-recognition.py | Script that performs facial recognition in Python. • FizzBuzz.py | Simple FizzBuzz problem for Python Beginners. • GuessTheNo.py | Simple game about guessing the number xD. • Hangman.py | Hangman game!. • Happy Numbers.py | Implemention of happy numbers in Python. • Hasher.py | Hasing data using the hasher module. • Hashtags.py | Converts any sentence into a Hashtag. • Huffman_Coding.py | Implementation of Huff_man coding. • Image_Compressor.py | Compresses your images. • List appender.py | Constantly append elements to your list. • MatArmstrong.py | Implementation of armstrong numbers.. • Matrix_multiplication.py | Perform matrix multiplication. • Middle_in_string.py | Find the middle letter in a string. • NeonNumber.py | Implementation of neon numbers. • Num_Counting.py | Automated script to cheat the counting bot on discord xD. • PDFMiner.py | Mine data from PDFs. • Prime_Checker.py | Check if the number provided is prime or not. • ReadMe List.py | The script used to generate this README.md file. • Relations.py | Obtain reflexive, symmetric and transitive relations from a given set of numbers.. • RequestSpammer.py | Spam rogue requests to a webpage to test how well it can handle multiple requests. • Secure coding.py | Performing various security standards on one script in Python. • Simple_alarm.py | A simple alarm!. • Simulate devices.py | Simulate your keyboard, mouse and other devices using Python!. • SnakeWaterGun.py | Implementation of the snake water and gun game.. • Theme_Picker.py | A script written to automate and randomize picking of themes for hackathon. • URL_shortener.py | Shorten your URLs. • Urllib.py | Hit up API endpoints using this script. • Validator.py | Validating data using the validator module. • VowelDict.py | Create a dictionary with keys as string and value as the number of vowels in that string. • YouTube downloader.py | Download Youtube videos, playlists and music. • html2markdown.py | Convert HTML files into markdown format. • internetspeedtest.py | Check your internet speed using this script. • keypad_combinations.py | Finds the keypad combinations for letters (Useful if you have an old phone xD). • print_min_of_array.py | Print the minimum of an array.
To contribute to the programs, fork the repository, create a new branch and send us a pull request. Make sure you read CONTRIBUTING.md before sending us Pull requests.
This repository is under the GNU General Public Version 3 License. Read the LICENSE file for more information.