Skip to the content.

PyHub

Logo
A-Z of Python Essentials in one place!

![Issues](https://img.shields.io/github/issues/SVijayB/PyHub?color=brightgreen) ![Pull requests](https://img.shields.io/github/issues-pr/SVijayB/PyHub?color=brigthgreen) ![forks](https://img.shields.io/github/forks/SVijayB/PyHub) ![stars](https://img.shields.io/github/stars/SVijayB/PyHub) ![license](https://img.shields.io/github/license/SVijayB/PyHub?color=orange)

Table of contents ## Table of Contents - [Basics](#basics) - [OOPS](#oops) - [Inheritance](#inheritance) - [Modules](#modules) - [Methods](#methods) - [Sorting Algorithms](#sorting-algorithms) - [Graphics](#graphics) - [Arcade Module](#arcade-module) - [Random Module](#random-module) - [SMTP Module](#smtp-module) - [Errors And Exceptions](#errors-and-exceptions) - [File Handling](#file-handling) - [Linked List](#linked-list) - [Single Linked List](#single-linked-list) - [Doubly Linked List](#doubly-linked-list) - [Thread Programming](#thread-programming) - [Socket Programming](#socket-programming) - [Magic Methods](#magic-methods) - [Coroutines](#coroutines) - [Regular Expressions](#regular-expressions) - [Numerical Computation](#numerical-computation) - [NumPy](#numpy) - [Graphs](#mathematical-graphs) - [Pandas](#pandas) - [PyTorch](#pytorch) - [Statistics](#statistics) - [Algorithms](#algorithms) - [Comprehensions](#comprehensions) - [Generators](#generators) - [Databases using SQLite3](#databases-using-sqlite3) - [Graphs](#graphs) - [Descriptors](#descriptors) - [Software Design Pattern](#software-design-pattern) - [Meta Programming](#meta-programming) - [Decorators](#decorators) - [Class Decorators](#class-decorators) - [Function Decorators](#function-decorators) - [Metaclasses](#metaclasses) - [AI and ML](#ai-and-ml) - [Miscellaneous](#miscellaneous) - [Contributing](#contributing) - [License](#license)

Note :

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.


Basics

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.

OOPS

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.

Inheritance

Inherit.py                    | Basic Understanding of Inheritance in Python.
• Hierarchical.py               | Hierarchical Inheritance
• Hybrid.py                     | Hybrid Inheritance.
• Multi-Level.py                | Multi-Level Inheritance

Modules

LibMod.py                     | Using a Standard Python Library Module.
• Operations.py                 | A program that is to be imported.
• Importing.py                  | Importing Operations.py.

Methods

Instance.py                   | Understanding Instance Methods.
• Static.py                     | Understanding Static Methods
• Class.py                      | Understanding Class Methods

Sorting Algorithms

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.

Graphics

SS
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.

Arcade Module

SS2
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.

Random Module

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.

SMTP Module

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.

Errors And Exceptions

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.

File Handling

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.

Linked List

Understanding Single and Doubly Linked List in Python.

Single Linked List

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.

Doubly 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.

Thread Programming

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.

Socket Programming

Logo
A Simple GUI based Chat Room Application.

Using sockets in python to create a server and client side to send and recieve messages and files.

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.


Magic Methods

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.

Coroutines

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.

Regular Expressions

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.

Numerical Computation

NumPy Logo
Understanding the various functions and operations of the NumPy Library in Python.

Numpy


Array Operations.py           | NumPy Operations for Array manipulations.
• Numerical Computations.py     | Mathematical and Numerical Computations.
• Numpy.ipynb                   | Basic functions and operations using Numpy

Mathematical Graphs

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.

Pandas

Bitcoin.ipynb                 | Bitcoin gross product analysis.
• Winequality.ipynb             | Wine quality frequency graph.

PyTorch

PyTorch.ipynb                 | Brief introduction to PyTorch.

Statistics

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.

Comprehensions

Understanding the different uses of list and dictionary comprehensions.

List.py                       | List Comprehensions.
• Dictionary.py                 | Dictionary Comprehensions.

Generators

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.

Databases using SQLite3

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.

Graphs

Graphs Logo
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.

Descriptors

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.

Software Design Pattern

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.

Meta Programming

Decorators

Function Decorators

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.

Class Decorators

Using Class decorators

Class Decorators.py           | Understanding class decorators in Python.

Metaclasses

Creating and understanding metaclasses in OOPS

Meta Classes.py               | Understanding and using meta classes.

Algorithms

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

AI and ML

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


Cryptography

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.

Miscellaneous

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.


Contributing

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.

Special thanks to all the contributors! ✨

Contributors

License

This repository is under the GNU General Public Version 3 License. Read the LICENSE file for more information.