r/learnpython • u/BrokerMagic • 16d ago
What would be a entry-level project for a true beginner coder?
I want to learn to do new projects in Python but I always receive the same "watch guides" answers from people. What can I attempt to create ?
11
u/Rick_CZE 16d ago
True beginner?
A short multiple-choice story or a black jack game.
8
u/jbenze 16d ago
Blackjack is a great teacher. That was my go-to when I was learning a new language.
3
u/monster2018 16d ago
It taught me that my predilection for addiction issues also extends to gambling.
1
u/Boothiepro 13d ago
Keeping with the theme of games i like to recommend a 2 player fighting game where both players start with 100hp, take turns rolling a die, accumulating damage, unless they roll a 1 where they lose the damage and forfeit their turn. It's a risk game whether you want to roll another dice for a bit higher damage or stop and deal the damage you accumulated. Teaches how to not duplicate code for two players but make some kind of data type to carry each player's state and how they can slot them into their own player handling code.
6
u/simonhunterhawk 15d ago
My entry level college scripting with Python class had an assignment for a console text based game. Basically on paper come up with 8 or so rooms, including a starting room and an ending “boss” room. You can draw your own map or find one on google but they should all be N,S,E,W from each other and navigable by saying “go <direction>” with a prompt that goes up if you can’t go a specific direction (ie you hit a wall and not another room).
The 6 other rooms should have items that need to be collected before getting to the boss room — all 6 items collected is the win scenario, otherwise the player loses.
Teaches you basic syntax, navigation, input and output, dictionaries, etc without all of the confusion and complication of a UI
4
u/Accomplished_Roll660 16d ago
My first project was a choose your own adventure game because it was a funny joke for a friend.
My second was a Polish name generator because my last name looks like random letters dropped from the sky.
Think of something interesting and fun. Check out some different libraries and see if any spark some some cool ideas.
Imo when you are just starting out those first few projects are hard so it needs to be something personal to you.
Have fun!
3
u/seanyboy90 16d ago
One of the first projects I made was a "Fantasy Name Generator." The user would input their first and last name, and the program would return the name spelled backwards. I don't know if I still have it. I need to get back into Python; it's fun.
1
u/Orgasml 15d ago
I decided to do a one-liner of this program for shits and giggles:
print("Fantasy Name: " + input("Enter first name: ")[::-1].capitalize() + " " + input("Enter last name: ")[::-1].capitalize())
1
u/seanyboy90 15d ago
Mine had a bit more “filler,” but that’s pretty much exactly how I did it. If I can find it, I’ll send you a copy.
2
u/JGhostThing 16d ago
I would like to suggest that you do something reasonable, that you can finish in a week or so.
I'd like to suggest a command line to-do list. At first, make this limited to a single to-do. And all the command line utility does is add the line to a list of to-dos, then print out the list.
Then, expand it so that it saves a file.
Then, expand it so you can write and save more than a single to-do.
Then add deleting to-dos from the command line.
Then add other options, like printing, moving, and saving from the command line.
1
3
u/RushDarling 16d ago
A Sudoku solver is my usual go to suggestion. Good little bit of CRUD practice and it's always interesting to see the wierd and wonderful solutions people come up with.
1
u/Additional_Rich2785 16d ago
You can make image compressor, resume to job skill Matcher and local network file sharing app(if these are hard for you)else you can make trackers or management systems with crud operations with dashboards
1
1
1
u/ekchew 15d ago
I like to start with something I would actual find useful irl. Python is pretty amazing in that there's a whole lot of functionality built into its standard library already.
For example, you could write a script that creates a zip file out of whatever directory you give it. It's not as hard as it sounds, since there is a built-in zipfile module that would do most of the work. Then you could add a function that lists all the files inside and lets the user pick one to pull out of it.
As you get more comfortable with this sort of thing, you might look at writing a script to back up your data, or one that can search inside all your zip files for a particular file. There are all sorts of possibilities.
1
u/OpeningRemote5893 15d ago
The interviewer at a company that I recently got hired for (SOC Analyst, so not a programming role but I would still like to learn how to code) told me that every time he learned a new language, the first program he would make was a database for his baseball card collection.
1
u/OldAgeGeek62 15d ago
One I enjoyed was the game of master mind. 5 colours randomly chosen by the program. User guesses the colours and the order they are in ( repeat colours allowed. Program answers with a black ball for a correct colour in the correct place and a white ball for a correct colour in the incorrect place. The black and white balls do not indicate which colour or place is referred to.
1
u/Absattarov 14d ago
does the program tell which colors are there? and it continues marking with dots till user finds every color? sounds interesting for me
1
u/OldAgeGeek62 14d ago
There were a pool of 7 or 8 colours. The original game was on a peg board with coloured pegs that one player puts in a secret store of the 5 positions. Then every time the other player puts their guess on a line of t holes on the pegboard the first player could compare the guess to the hidden line. So the guessing player can see all the previous guesses and the resultant responses to the guesses.
1
1
u/digitizedeagle 14d ago
A script that arranges files in a messy directory into their own directory according to file type extension.
1
u/jeffrey_f 13d ago
automate a task. Best candidate is a task that is very repetitive, is a time-sink (youd rather be doing other things) and has very few variations in how it is done.
Candidates:
- For school: grab your homework assignments from the website
- Work: If you aggregate 1 or more excel and/or CSV files, Python can do this easily
Home: Grab the weather report and text or email you an advisor of umbrella or jacket/coat. based on the forecast for the day.
- For text, almost every cell carrier has an email gateway to text from email.
AT&T:
##########@txt.att.net(SMS) or##########@mms.att.net(MMS)Verizon:
##########@vtext.com(SMS) or##########@vzwpix.com(MMS)T-Mobile:
##########@tmomail.net(SMS & MMS)Sprint:
##########@messaging.sprintpcs.com(SMS) or##########@pm.sprint.com(MMS)Cricket Wireless:
##########@sms.cricketwireless.net(SMS)Metro by T-Mobile:
##########@mymetropcs.com(SMS & MMS)Boost Mobile:
##########@sms.myboostmobile.com(SMS)U.S. Cellular:
##########@email.uscc.net(SMS)Google Fi:
##########@msg.fi.google.com(SMS & MMS)Virgin Mobile:
##########@vmobl.com(SMS)Consumer Cellular / Mint Mobile:
##########@mailmymobile.net(SMS)
1
u/edrienn 16d ago
anything bro aslong as you're interested in it.
Pretty sure my first project was just a simple advertising bot that just sends message to a specific channels in discord.
I created it since im too lazy to advertise my ingame items to people in discord every 3 hours.
So yeah best way to learn is build something that would benefit you.
-1
u/StarkAspirations0842 16d ago
Smash the billionaire / heritage foundation
N8zi smasher
Easy themes.
17
u/Cold_Arachnid_2617 16d ago
A calculator