Python Forum
Collection of programming ideas and challenges
Thread Rating:
  • 7 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Collection of programming ideas and challenges
#1
This is not all my ideas, i more or so collected them from time to time when i cant think of anything to code. Reading through them though will jog my memory of something i wanted to code at one time or another. Feel free to add to the list. IT would be cool to have a massive list of ideas when you have writer's block.

links to ideas...
Project Euler
Python Challenge
https://www.hackerrank.com/domains/pytho...troduction.
https://www.reddit.com/r/dailyprogrammer/ <- Hundreds of reddit threads of ideas
Python Projects 2020

General Ideas

Beginner

1) make a text-based menu system. An Inventory. Buy items from menu, increase inventory, decrease 'store' inventory. Sell items from menu, decrease inventory, increase 'store' inventory.
2) make a program to encrypt/decrypt a string
3) make a word-guess/number-guess game
4) find a web site and extract data from the HTML with the program to give you auto-updates
5) get the first 3 results of a google search based on user input, and display the title and link
6) create a program to search all subdirectories for a specific file extension and copy those files to a different directory.
7) create a program to check your public IP address
8) create a program to email yourself
9) create a program to download the newest file of something automatically
10) make a terminal progress bar
11) make a program to change terminal color for specific words
12) make a program to check your system information
13) make a program that saves input to a file, and automatically saves a time stamp for the time it was saved
14) create a tutorial for the language you are learning. It will help teach it to yourself.
15) make a notification program. For every month/week/day/hour/minute it notifies you of something
16) get html from cragislist,. parse, and post it on your facebook wall for updated info regarding the latest

Intermediate

1) make a web browser 
2) make a code snippet program (terminal or GUI) to collect snippets of code you come across while programming. From a database, save/load a key to save/get the snippet desired.
3) Make an IRC bot
4) build a search engine
5) build GPS Direction from point A to point B

Specific Ideas

Numbers

Text


Networking


Classes


Threading

Web


Files



Databases


Graphics and Multimedia


Games
very specific challenges


Grading Program

Cola Machine

While( user == gullible )



Pancake Glutton



Bracketing Search


Tic Tac Toe


Dungeon Crawl


Fun with Functions



Strings are your friends, until they betray you.


Graduation:
  • Scrabble challenge - implement a scrabble solver that will tell you the best Scrabble words given a particular Scrabble rack. Great for cheating at Words with Friends!
  • Flash card challenge - implement a flash card quizzer from scratch.
  • Twitter - Use the Twitter API to write the basic parts of a Twitter client. See what your friends are tweeting, get trending topics, search tweets, and more.
  • ColorWall - Program graphical effects for a ColorWall.
  • Databases and Jeopardy - learn how to get data from a database in Python while writing parts of a Jeopardy game, using real Jeopardy data!
  • Plotting data with matplotlib - learn how to plot data with the matplotlib plotting library. Ditch Excel forever!
  • Make a graphical game with Pygame - Work through a Pygame tutorial in which you'll recreate graphical games like Tetris.
  • Make a website with Django - Work through the official Django tutorial, where you'll create an interactive poll application.
  • Object-oriented Python - Create a mini-banking system with users and accounts.

Games

http://videogameideas.wikia.com and select random page
http://inventwithpython.com/blog/2012/02...s-to-code/

likes this post
Recommended Tutorials:
#2
https://github.com/zhiwehu/Python-programming-exercises

100+ Python challenging programming exercises

Recommended Tutorials:
#3
i'd like to see a web based tax form that is formatted to look like a real tax form, where you can enter your own numbers and it calculates the parts of the form that has all the info it needs, with an "I am Donald J. Trump" button that fills in his loss amounts.
Tradition is peer pressure from dead people

What do you call someone who speaks three languages? Trilingual. Two languages? Bilingual. One language? American.
#4
Note that the fourth link (game prerequisites) is broken. The hacker rank link goes to a blank page on hacker rank. The Python page might be better: https://www.hackerrank.com/domains/pytho...troduction.

I would also suggest adding r/dailyprogrammer: https://www.reddit.com/r/dailyprogrammer/.
Craig "Ichabod" O'Brien - xenomind.com
I wish you happiness.
Recommended Tutorials: BBCode, functions, classes, text adventures
#5
challenge #0

your function is given a string with an IP address possibly in there somewhere.  if there is no IP address, then just return None or raise an exception.  if there is an IP address, return a tuple with:

#0: where the first IP address starts in the string
#1: where the first IP address ends in the string

these 2 numbers are suitable for slicing the string to split the parts.

bonus: support multiple IP addresses (what should be returned?)
bonus: support IPv6 (what should be returned?)

challenge #1

write a program/script to sort the lines of a file by IP address as found by the function in the above challenge. be sure that 10.9.9.9 comes before 172.16.8.8

bonus: accept an argument/option to specify the index of which IP address is to be the sort key
bonus: support IPv6 (how will you collate IPv4-in-IPv6 relative to IPv4?)
Tradition is peer pressure from dead people

What do you call someone who speaks three languages? Trilingual. Two languages? Bilingual. One language? American.
#6
Challenge #1: this is the -V, --version-sort options of the 'sort' command :) (which, the way it works, applies to IP address just as well as to program versions).
Unless noted otherwise, code in my posts should be understood as "coding suggestions", and its use may require more neurones than the two necessary for Ctrl-C/Ctrl-V.
Your one-stop place for all your GIMP needs: gimp-forum.net
#7
GIS Programming Ideas - A list of research locations, and data sources for learning and programming GIS (Geographic Information System) Change detection. I collected these, but
may never do anything with them. This could be a good starting list for career or business.

GIS - Change Detection - Can be used for many purposes, examples include defense, finding weeds and pests on Farms, locating emegring volcanoes, vegitation change over time, rate of increase in city size, new construction, to mention just a few.

This data is mostly for the United States - Please add information that you know of for you're country.

Change Detection - Measure changes in a particular area or feature over time.
Research:
Remote Sensing:
  1. GIS people - Commercial company, but good study
  2. Tutorial: Fundamentals of Remote Sensing
  3. Remote sensing wikipedia
  4. NOAA - What is remote sensing
  5. ESA eduspace What is remote sensing
  6. NASA Earth Observatory
  7. Digital Globe - Commercial company, but good study
  8. GIS People Austrailia - What can you do with GIS
  9. Center for Remote Imaging, Sensing and Processing (CRISP)
  10. PhysicalGeography.net - Introduction to Remote Sensing ebook
  11. GIS Geography - 100 Earth Shattering Remote Sensing Applications & Uses
  12. Careers in Cartography and GIS - pdf
Map Projections
  1. Map Projections - Wikipedia
  2. List of Map Projections Wikipedia
  3. Map Projections Overview University of Coloado Boulder
  4. Map projections kartoweb.itc.nl
  5. Map projections poster
  6. Map Projections Kartograph
  7. Understanding Map Projections ESRI pdf
  8. Plotting Coordinates and Projections
  9. Europe Map Projections - pdf
  10. Maps and Cartography - Projections Ball State
  11. Package ‘mapproj’ - The Comprehensive R Archive Network
  12. Manitoba Map Projections
  13. What are Map Projections?

Data

Remote Sensing:
  1. Teaching with GeoPads - Remote Sensing Imagery
  2. National Map Site - US government
  3. DOQ (Digital orthophoto Quadrangles) - USGS
  4. DOQ TerraServer USA
  5. GeoTiff Format Specification
  6. GeoCommunity - Resource for GIS and GeoSpatial data
  7. LandSAT program
  8. The National Geologic Map Database
  9. Association of American State Geologists (AASG)
  10. New Mexico Bureau of Geology & Mineral Resources
  11. Nevada Bureau of Mines and Geology
  12. Montana Bureau of Mines and Geology
  13. United States Bureau of Mines - Wikipedia
  14. National Mine Map Repository
  15. Canada Mining & Geology Board

Searching for data - Mostly for those new to searching, but you just might find something useful:

Just a quick note about searching. Google is a great place to start when you
have a specific topic in mind. Here are a few things you can do to enhance your searches:

For example, I will use the following link (from Manatoba Map Projections):

http://www.edu.gov.mb.ca/k12/cur/socstud...s/tn-6.pdf

  1. If you want to narrow your search to a specific site, add the following at the end of the search:

    'Map Projections site: edu.gov.mb.ca' -- Note no www

    There was a day when you would get just the specific site. Now it will be 'mostly' the specific site. Google, in order to stasify all searches has decided that this is what you need. They still have a verbatim engine, that will not give the extra info.

  2. Take the site url and start truncating the end and finding out where that will take you. Often, you will get a 'forbidden' message, often a surprise.
    For example take http://www.edu.gov.mb.ca/k12/cur/socstud...s/tn-6.pdf
    Now remove the tn-6.pdf and retry. You will get a nice list of related information.

According to http://gisgeography.com/free-gis-programming-tutorials/
Python is the number one language used for GIS
#8
Program Idea for Semi-Beginners
This project assumes that you have a decent background knowledge is classes, file I/O and many other things. The idea is a Bank Database. Essentially each bank account owner will have a PRE-GENERATED account ID(12-digits long, all numerical) and a PIN they create them self. They can use this pin to make a deposit, make a withdrawal, and look at their transaction log.
If the user doesn't have a bank account, let them register one using some basic information you would have to provide if you were to set up a real bank account. (Name, DOB, SSN, create a PIN, generate account number). You want to make sure that the information the user gives is VALID.

Information Restrictions
  • Name is to be only Alphabetic
  • DOB is to be a valid date and over the age of 18
  • SSN is to be exactly 9 digits
  • PIN is to be user created and only 4 digits
  • Acct # is to be pre-generated using an algorithm. No 2 can be the same in the database.
When the user creates their account, all the information is to be saved into a file so the user can log back on to their account at a later date if they so chose to log back on. You can also ask for a starting amount for their account. I did the same and made the user pay a $25 charge. Obviously this couldn't be done in real life, but let's just pretend :)



In short, here is a list of things you need to do for this project:

  1. Allow the user to be able to create an account with the bank
  2. Make sure the information they enter is valid
  3. Generate the account number for them by using an algorithm to do so.
  4. Store all the information in a file.
  5. Allow the user(s) to log in using their account # and PIN
  6. Allow the user(s) to make a Deposit, Withdrawal, and view transaction logs for their account
  7. Allow the user to log out of their account and be presented with the login screen again
  8. Allow the user to be able to quit from the program.
  9. (Optional) Make it look presentable.


I know as a beginner, it's hard to find something that is big enough to tackle, but not something overwhelming. This is a project that I came up with to really teach me about File I/O and moving data around different files, and it really helped. It also helps with learning OOP. Hopefully, this didn't seem to scattered around, I just wanted to get this out there!

~ Zombie Programming.
#9
(Oct-20-2018, 02:49 PM)AIClaire Wrote: It has taken a while to build up my knowledge of programming in python so that I understand it but there have been quite a few programming examples I've found on the way that helped.

I have started to use some supplementary material in the form of machine learning podcasts, a book called automate the boring stuff as well as seeking out advice using GitHub and StackOverflow to get support.

Here are some of the best examples I found on github:
Here are three of the best I have found showing python programming examples:

Python Programming Examples: link
Geek computers - python: link
Python Programs: link

You can also try the book 'Automate the Boring Stuff' - I found it super helpful

And finally - creating a Tik Tak Toe game is a great way to get started as a beginner link

I wrote an article about how I worked my way up to my first beginner python program - if you want to hear more you can read it here:
https://www.artificiallyintelligentclair...n-program/
Recommended Tutorials:


Possibly Related Threads…
Thread Author Replies Views Last Post
  Minigame Collection with Menu textmonster404 1 3,335 Feb-20-2017, 02:11 AM
Last Post: metulburr

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020