For a school project I need to make a simple python program. I need ideas so if you have something that you want made for you then please post it here. I’ll release it here under a gnu general public license once I’ve finished.

  • hex123456@sh.itjust.works
    link
    fedilink
    arrow-up
    4
    ·
    edit-2
    4 days ago

    AI debate program. Make calls to 2 different AIs where you have them debate some topic that is put in by the user. See how far off topic they can get…

  • Spaz@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    edit-2
    4 days ago

    Give me lotto numbers.

    Edit: to be more specific USA mega millions lotto numbers.

    five random numbers from 1 to 70 (the white balls) and one random number from 1 to 24 (the Mega Ball).

    • solrize@lemmy.ml
      link
      fedilink
      arrow-up
      4
      ·
      4 days ago
      >>> import random
      >>> random.sample(range(1,71),5),random.choice(range(1,25))
      ([43, 8, 15, 66, 28], 17)
      
  • CaptainBasculin@lemmy.ml
    link
    fedilink
    arrow-up
    2
    ·
    4 days ago

    You can build an RSS scraper that posts news from multiple sources to Lemmy. RSS is very well documented and you can use pythorhead to interact with Lemmy.

    Alternately, you can scrape data from a currency exchange site and live display their data on your GUI. Trying to scrape sites teaches you a lot of things about how to approach it. You can make use of beautifulsoup library to sort out from the whole site.

    • pineapple@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 days ago

      Fair point. I have only been programming for about a year and I know basic loops as well as how to make functions and classes. Although I am by no means against learning a new skill!

  • wuphysics87@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    3 days ago

    I have a shell script I wrote I call tdiff. If you enter a number it takes it as the number of days and then tells you the date and the day of the week in that number of days. If you enter a date, it tells you how many days until that date.

  • 𝚝𝚛𝚔@aussie.zone
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    4 days ago

    Heres an idea… I made it in PHP and bash, cause I’m terrible at programming. But it works well and would be a neat school project I reckon.

    Our VOIP provider provides webhooks. I have one setup so when someone rings, the webhook calls a script on my web server that looks up a phone book and then uses a Discord webhook to push what is essentially a more advanced caller ID to a private discord channel - their number, their name, company they represent, and some notes like “has a son Chris who plays football, married to Jill” or whatever.

    The “phonebook” lookup first tries a remote shared phonebook (which is given in a Yealink format), and after parsing that data it saves a copy of that remote phonebook before moving on to the rest of the script. If it cant call the remote phonebook for whatever reason, it falls back on using the last saved copy locally.

    The benefit of all this is that on my desktop I always know who’s calling and a bit of a blurb about them before I pick up the phone, and if I’m out of the office I know who’s trying to ring. Since I have VOIP on my phone as an extension I can technically have someone transfer the office to my mobile too so having the discord notification is handy when a transfer appears.

    The members of the private discord channel determines who sees the notifications, and having a single phonebook to update for everyone in the office means it’s always (… usually) kept up to date.

  • shittydwarf@sh.itjust.works
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    edit-2
    4 days ago

    Simple emulators (Original nintento, gameboy, space invader arcade cabinet, old teletype machines… german enigma code machine)
    Software synthesizer (music)
    Sample mixer
    Guitar tuner
    Sheet music to tab converter
    Wordle clone
    Stock tracker
    zip/unzip tool
    mp3 codec encoder / decoder
    ebook converter
    CLI ebook reader
    A posix compliant shell
    Ascii video player (play youtube videos on the console using ascii)
    Spotify client that runs in the terminal
    QR code generator
    CLI Flashcards

    • NeatNit@discuss.tchncs.de
      link
      fedilink
      arrow-up
      7
      ·
      4 days ago

      there’s a pretty wild range there from fairly easy to make in a few hours to massive community effort over several decades

    • pineapple@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 days ago

      The asci video player would be cool. I don’t need to go to my web browser to watch youtube, I could do it in the terminal! terminal spotify client also seams cool, although I wouldn’t know where to start with that. I could just make an mp3 player, it would align with my idea of privacy. What do you mean by ebook converter? does it convert physical book pages to ebooks? i’m slightly confused.

      Also I love the cli based ideas we need more cli apps.

      • MyNameIsRichard@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        4 days ago

        does it convert physical book pages to ebooks?

        I’m guessing it converts something like ePub to PDF. You could try to write in a way such that it becomes simple to add new formats.

  • incogtino@lemmy.zip
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    4 days ago

    A real world problem that would help a real person

    A friend coordinates a group of kayakers. Each week they kayak on Wednesday and Saturday mornings. To choose where to go they consult tide listings for the mouth of local creeks and rivers, then randomly select a site that meets a minimum tide height (the threshold is different for each site)

    Ideally a Python project would:

    • Take a list of locations (as lat long, or choose from a map)

    Each location has:

    1. a threshold value for tide height (minimum height)
    2. a preferred direction (e.g. if you enter near the mouth, you want a falling tide so you paddle hard first then easy)
    3. an earliest start time (further locations get a later time, specified by the user)
    • Calculate the tide height for each location (calc on wikipedia) between 7am and 9am on each Wednesday and Saturday

    • Randomly select a location and time (that meets the threshold value, tide direction, and earliest start time) for each date

    • Choose a different location if the randomly chosen location was used as one of the previous x locations

    • Return the list of dates, times, locations, tide heights, and tide directions in a human readable format e.g. csv