SkillAgentSearch skills...

Projects

Over 100 projects to complete for practice Python. Fork for learn any new programming language

Install / Use

/learn @jtuz/Projects
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Project List

A list of practical projects than anyone can solve in any programming language. These projects are divided in categories and each category has its own folder.

This is a project to learn Python, but feel free to fork it and resolve the project list with any programming language.

Tasks

========================================

Some details about this repo:

  • I will use Python because is the language that I want to learn.
  • Maybe some algorithms are no the best. You can add a comment to improved.
  • I will cover some third party libraries.
  • I may be not able to complete all these tasks.
  • There is not a specific order
  • Page for Projects

ToDO

  • Add unit testing
  • New categories
  • Videogames tasks with Pygame

List of tasks

<a name="numbers">Numbers</a>

Find PI to the Nth Digit - Enter a number and have the program generate PI up to that many decimal places. Keep a limit to how far the program will go.

Fibonacci Sequence - Enter a number and have the program generate the Fibonacci sequence to that number or to the Nth number.

Prime Factorization - Have the user enter a number and find all Prime Factors (if there are any) and display them.

Mortgage Calculator - Calculate the monthly payments of a fixed term mortgage over given Nth terms at a given interest rate. Also figure out how long it will take the user to pay back the loan.

Change Return Program - The user enters a cost and then the amount of money given. The program will figure out the change and the number of quarters, dimes, nickels, pennies needed for the change.

Binary to Decimal and Back Converter - Develop a converter to convert a decimal number to binary or a binary number to its decimal equivalent.

Calculator - A simple calculator to do basic operators. Make it a scientific calculator for added complexity.

Unit Converter (temp, currency, volume, mass and more) - Converts various units between one another. The user enters the type of unit being entered, the type of unit they want to convert to and then the value. The program will then make the conversion.

Alarm Clock - A simple clock where it plays a sound after X number of minutes/seconds or at a particular time.

Distance Between Two Cities - Calculates the distance between two cities and allows the user to specify a unit of distance. This program may require finding coordinates for the cities like latitude and longitude.

Credit Card Validator - Takes in a credit card number from a common credit card vendor (Visa, MasterCard, American Express, Discoverer) and validates it to make sure that it is a valid number (look into how credit cards use a checksum).

Tax Calculator - Asks the user to enter a cost and either a country or state tax. It then returns the tax plus the total cost with tax.

Factorial Finder - The Factorial of a positive integer, n, is defined as the product of the sequence n, n-1, n-2, ...1 and the factorial of zero, 0, is defined as being 1. Solve this using both loops and recursion.

<a name="algorithms">Classic algorithms</a>

Collatz Conjecture - Start with a number n > 1. Find the number of steps it takes to reach one using the following process: If n is even, divide it by 2. If n is odd, multiply it by 3 and add 1.

Sorting - Implement two types of sorting algorithms: Merge sort and bubble sort.

Closest pair problem - The closest pair of points problem or closest pair problem is a problem of computational geometry: given n points in metric space, find a pair of points with the smallest distance between them.

Sieve of Eratosthenes - The sieve of Eratosthenes is one of the most efficient ways to find all of the smaller primes (below 10 million or so).

<a name="text">Text</a>

Reverse a String – Enter a string and the program will reverse it and print it out.

Pig Latin – Pig Latin is a game of alterations played on the English language game. To create the Pig Latin form of an English word the initial consonant sound is transposed to the end of the word and an ay is affixed (Ex.: "banana" would yield anana-bay). Read Wikipedia for more information on rules.

Count Vowels – Enter a string and the program counts the number of vowels in the text. For added complexity have it report a sum of each vowel found.

Check if Palindrome – Checks if the string entered by the user is a palindrome. That is that it reads the same forwards as backwards like “racecar”

Count Words in a String – Counts the number of individual words in a string. For added complexity read these strings in from a text file and generate a summary.

Text Editor – Notepad style application that can open, edit, and save text documents. Add syntax highlighting and other features.

RSS Feed Creator – A program which can read in text from other sources and put it in RSS or Atom news format for syndication.

Post it Notes Program – A program where you can add text reminders and post them. You can have the program also add popup reminders.

Quote Tracker (market symbols etc) – A program which can go out and check the current value of stocks for a list of symbols entered by the user. The user can set how often the stocks are checked and the program can show green up and red down arrows to show which direction the stock value has moved.

Guestbook / Journal – A simple application that allows people to add comments or write journal entries. It can allow comments or not and timestamps for all entries. Could also be made into a shout box.

News Ticker and Game Scores – A program which sits on your desktop and aggregates news and game scores from various sources on the net. It then scrolls them across the screen on regular intervals.

Fortune Teller (Horoscope) – A program that checks your horoscope on various astrology sites and puts them together for you each day.

Vigenere / Vernam / Ceasar Ciphers – Functions for encrypting and decrypting data messages. Then send them to a friend.

Random Gift Suggestions – Enter various gifts for certain people when you think of them. When its time to give them a gift (xmas, birthday, anniversary) it will randomly pick one and perhaps places you can get it.

Text to HTML Generator – Converts text files into web HTML files and stylizes them. Great for making online documentation of standard text documentation.

CD Key Generator – Generates a unique key for your applications to use based on some arbitrary algorithm that you can specify. Great for software developers looking to make shareware that can be activated.

Regex Query Tool – A tool that allows the user to enter a text string and then in a separate control enter a regex pattern. It will run the regular expression against the source text and return any matches or flag errors in the regular expression.

<a name="networking">Networking</a>

FTP Program – A file transfer program which can transfer files back and forth from a remote web sever.

Get Atomic Time from Internet Clock – This program will get the true atomic time from an atomic time clock on the Internet. There are various clocks across the world. Do a search for a list of them.

Chat Application (IRC or MSN Style) – Create a chat application that can create simple chat rooms like on Internet Relay Chat (IRC) or a more direct chatting style like MSN. For added complexity, create your own protocol to facilitate this chatting.

Fetch Current Weather – Get the current weather for a given zip/postal code.

P2P File Sharing App – Create a program like LimeWire, FrostWire, Bearshare, or a torrent style application.

Port Scanner – Enter an IP address and a port range where the program will then attempt to find open ports on the given computer by connecting to each of them. On any successful connections mark the port as open.

Mail Checker (POP3 / IMAP) – The user enters various account information include web server and IP, protocol type (POP3 or IMAP) and the application will check for email on several accounts at a given interval.

Packet Sniffer – A utility program that will read packets coming in and out of the machine along with related information like destination and payload size.

Country from IP Lookup – Enter an IP address and find the country that IP is registered in.

Whois Search Tool – Enter an IP or host address and have it look it up through whois and return the results to you.

<a name="classes">Classes</a>

Product Inventory Project – Create an application which manages an inventory of products. Create a product class which has a price, id, and quantity on hand. Then create an inventory class which keeps track of various products and can sum up the inventory value.

Movie Store – Manage video rentals and controls when videos are checked out, due to return, overdue fees and for added complexity create a summary of those accounts which are overdue for contact.

Airline / Hotel Reservation System – Create a reservation system which books airline seats or hotel rooms. It charges various rates for particular sections of the plane or hotel. Example, first class is going to cost more than coach. Hotel rooms have penthouse suites which cost more. Keep track of when rooms will be available and can be scheduled.

Student Grade Book Application – Keep track of students (with a student class that has their name, average, and scores) in a class and their grades. Assign their scores on tests and assignments to the students and figure out their average and grade for the class. For added complexity put the students on a bell curve.

**Bank

Related Skills

View on GitHub
GitHub Stars85
CategoryDevelopment
Updated4d ago
Forks41

Security Score

95/100

Audited on Mar 27, 2026

No findings