/PyHub

A Repository that encompasses all my works on Python.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

PyHub

Logo
A Repository that encompasses all my works on Python


Table of contents

Table of Contents

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.
• RecursiveBubbleSort.py        | Bubble sorting using recursion.
• SelectionSort.py              | Selection Sort.
• ShellSort.py                  | Shell 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.

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.

Machine Learning

Covering the basics of machine learning using Python

LinearRegression.ipynb        | Linear Regression.
• NaiveBayes.ipynb              | Naive Bayes classifier.
• SupportVectorMachine.ipynb    | Support Vector Machine.

Miscellaneous

A random collection of program with various functionalities.

List appender.py              | A simple program to help you append data to a list.
• Batch file rename.py          | Renaming multiple files at once.
• XOR calculator.py             | Calculate maximal XOR value between two numbers.
• Hashtags.py                   | Adds a hashtag to each word.
• Case Swapper.py               | Creates a sequence of altering upper and lower cased string.
• ReadMe List.py                | A README list creator.
• Happy Numbers.py              | Check for happy numbers.
• Check_even_odd.py             | Check for even or odd numbers.
• Prime_Checker.py              | Check for prime numbers.
• Keypad_combinations.py        | Displays different possible keypad combinations.
• Print_min_of_array.py         | Displays the minimum value of array.
• Hangman.py                    | Hangman word guessing game!
• Image_Compressor.py           | Image Compression using Machine Learning.
• Huffman_Coding.py             | Huffman coding implementation.
• SnakeWaterGun.py              | A simple game similar to rock paper scissors.
• Tictactoe.py                  | Building tic tac toe using Python.
• VowelDict.py                  | Count vowels in words and append them to a dictionary.
• Relations.py                  | Find the reflexive, symmetric and transitive relations.
• YouTube Downloader.py         | Download youtube videos, playlists and audio.
• URL_shortener.py              | Shortens your URLs.

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.

Also, thanks for contributing to Open-source!

License

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