10 gekke coole projectideeën voor Python-ontwikkelaars

Wist je dat Python bekend staat als een allround programmeertaal?

Ja, dat is het, hoewel het niet voor elk afzonderlijk project zou moeten worden gebruikt,

kan het gebruiken om desktop-applicaties, games, mobiele apps, websites en systeemsoftware te maken. Het is zelfs de meest geschikte taal voor de implementatie van algoritmen voor kunstmatige intelligentie en machine learning.

Dus heb ik de afgelopen weken unieke projectideeën verzameld voor Python-ontwikkelaars. Deze projectideeën zullen hopelijk uw interesse in deze geweldige taal wekken. Het beste is dat je je programmeervaardigheden in Python kunt verbeteren met deze leuke maar uitdagende projecten.

Laten we ze een voor een bekijken.

1- Software maken GUI met spraakopdrachten

Interactievoorbeeld

Tegenwoordig is er enorme vooruitgang geboekt op het gebied van de ontwikkeling van desktopapplicaties. U zult veel GUI-builders en spraakherkenningsbibliotheken zien met slepen & neerzetten. Dus waarom zou je ze niet samenvoegen en een gebruikersinterface creëren door met de computer te praten?

Dit is puur een nieuw concept en na enig onderzoek ontdekte ik dat niemand ooit heeft geprobeerd het te doen. Het kan dus een beetje uitdagender zijn dan de onderstaande.

Hier zijn enkele instructies om met Python aan de slag te gaan met dit project. Allereerst heb je deze pakketten nodig: –

  • Spraakherkenningsbibliotheek
  • PAGINA – Sleep & Zet GUI Builder neer
    • Documentatie
    • Video van hoe PAGE werkt
    • Inlogvenster maken met PAGE

Nu, het idee is om een aantal spraakopdrachten hard te coderen, zoals:

Spraakopdrachten Beschrijving
Invoerveld toevoegen aan venster Het sleept een invoerveld van de “Widget-werkbalk ”En zet het neer in ons hoofdvenster.
Verplaats INPUT_FIELD_NAME naar links / rechts / boven / onder / midden van venster Het verplaatst een specifiek invoerveld naar de genoemde locatie.
Verplaats INPUT_FIELD_NAME 5px omhoog / omlaag / links / rig ht Dit commando instrueert de programmas om de positie van een specifiek invoerveld te veranderen zoals aangegeven door pixels en richting.
Verander INPUT_FIELD_NAME kleur in rood / # ff0000 Verander eenvoudig de lettertypekleur van een specifiek invoerveld.

Je begrijpt het, toch? Het is heel eenvoudig en ongecompliceerd om meer van dit soort commandos toe te voegen.

Omdat dit een Minimum Viable Product (MVP) wordt. Het zal dus helemaal ok zijn als je veel voorwaardelijke statements hard moet coderen (bijvoorbeeld if … else).

Na het instellen van enkele basiscommandos, is het tijd om de code te testen. Voorlopig kun je proberen een heel eenvoudig inlogformulier in een venster te bouwen.

De grootste flexibiliteit van dit idee is dat het kan worden geïmplementeerd voor game-ontwikkeling, websites en mobiele apps. Zelfs in verschillende programmeertalen.

2- AI Betting Bot

Tenniswedstrijd

Wedden is een activiteit waarbij mensen een uitkomst voorspellen en als ze gelijk hebben, krijgen ze er een beloning voor terug. Nu zijn er de afgelopen jaren veel technologische vorderingen gemaakt op het gebied van kunstmatige intelligentie of machine learning.

Je hebt bijvoorbeeld misschien gehoord van programmas als AlphaGo Master, AlphaGo Zero en AlphaZero die Go kunnen spelen (game) beter dan welke professionele menselijke speler dan ook. Je kunt zelfs de broncode krijgen van een vergelijkbaar programma genaamd Leela Zero.

Het punt dat ik wil overbrengen is dat AI slimmer wordt dan wij. Dit betekent dat het iets beters kan voorspellen door rekening te houden met alle mogelijkheden en te leren van ervaringen uit het verleden.

Laten we enkele begeleide leerconcepten in Python toepassen om een AI-wedbot te maken. Hier zijn enkele bibliotheken die u nodig heeft om aan de slag te gaan.

  • pandas – gegevensanalyse
  • NumPy – multidimensionale arrays, matrices en wiskundige functies
  • scikit-learn – Machine Learning
  • XGBoost – Gradient Boosting
  • Matplotlib – plotten
  • seaborn – statistische gegevensvisualisatie
  • augurk – Python-object Serialisatie

Eerst moet u een spel selecteren (bijv. Tennis, voetbal, enz.) Om de resultaten te voorspellen.Zoek nu naar historische gegevens over wedstrijdresultaten die kunnen worden gebruikt om het model te trainen.

De gegevens van tenniswedstrijden kunnen bijvoorbeeld worden gedownload in .csv-indeling van de website tennis-data.co.uk.

In het geval dat u niet bekend bent met gokken, hier is hoe het werkt.

Nadat we het model hebben getraind, moeten we het betrouwbaarheidsniveau voor elke voorspelling berekenen, ontdek de prestaties van onze bot door controleren hoe vaak de voorspelling klopte en tenslotte ook de Return On Investment (ROI) in de gaten houden.

Download een vergelijkbaar open-source AI Betting Bot-project van Edouard Thomas.

3- Trading Bot

Handelen

Trading Bot lijkt erg op het vorige project omdat het ook AI vereist voor voorspelling.

Nu is de vraag of een AI de fluctuatie van aandelenkoersen?

En het antwoord is ja.

Voordat we beginnen, we ne ed enkele gegevens om een handelsbot te ontwikkelen.

  • Yahoo! Financiën – om aandelengegevens te krijgen
  • Alpha Vantage – Real-time API voor financiële gegevens

Deze bronnen van Investopedia kunnen helpen bij het trainen van de bot.

  • Handelsstrategieën voor beginners
  • Doe alleen een ruil als deze voldoet aan deze 5-staps test

Na het lezen van beide artikelen, heb je nu een beter begrip van wanneer u aandelen moet kopen en wanneer niet. Deze kennis kan eenvoudig worden omgezet in een Python-programma dat automatisch de beslissing voor ons neemt.

U kunt ook verwijzen naar deze open-source handelsbot genaamd freqtrade. Het is gebouwd met Python en implementeert verschillende algoritmen voor machine learning.

4- Iron Man Jarvis (op AI gebaseerde virtuele assistent)

AI Assistant Interface

Dit idee is ontleend aan de Hollywood-filmserie Iron Mens. De film draait om technologie, robots en AI.

Hier heeft de Iron Man een virtuele assistent voor zichzelf gebouwd met behulp van kunstmatige intelligentie. Het programma staat bekend als Jarvis dat Iron Man helpt bij alledaagse taken.

Iron Man geeft instructies aan Jarvis in eenvoudige Engelse taal en Jarvis reageert ook in het Engels. Het betekent dat ons programma zowel spraakherkenning als tekst-naar-spraak-functionaliteiten nodig heeft.

Ik zou het gebruik van deze bibliotheken aanraden:

  • Spraakherkenning
  • Tekst naar spraak (TTS)

Voorlopig kun je de spraakopdrachten hardcoderen zoals:

Spraakopdrachten Voorbeeld Beschrijving
Open SOFTWARE_NAME Open Google Chrome Open een geïnstalleerd programma op uw computer.
KEYWORD Wikipedia Donald Trump Wikipedia Het zal Wikipedia doorzoeken op een specifiek trefwoord en de inhoud lezen met behulp van tekst-naar-spraak-functionaliteit.
Scan DRIVE_NAME / FOLDER_NAME / FILE_NAME Scan C-schijf Met deze opdracht geeft Jarvis de antivirussoftware de opdracht om een scan.

Ja u kunt Jarvis ook gebruiken voor tal van andere taken, zoals:

  • Alarm instellen op mobiel.
  • Controleer continu de beveiligingscamera van het huis en informeer voor het geval er iemand buiten wacht. U kunt meer functies toevoegen, zoals gezichtsherkenning en herkenning. Het helpt je erachter te komen wie of hoeveel mensen er zijn.
  • Ruimtevensters openen / sluiten.
  • Lichten in- / uitschakelen.
  • Automatisch reageren op e-mails .
  • Taken plannen.

Zelfs de oprichter van Facebook, “Mark Zuckerberg”, heeft een Jarvis gebouwd als bijproject.

5 – Houd een website in de gaten om op de hoogte te worden gehouden van een aankomend concert van een artiest

Tickets

Songkick is een zeer populaire service die informatie geeft over aankomende concerten. De API kan worden gebruikt om naar aankomende concerten te zoeken door:

  • Artiest
  • Locatie
  • Locatie
  • Datum en tijd

Je kunt een Python-script maken die dagelijks een specifiek concert controleert met behulp van de Songkick-API. Stuur ten slotte een e-mail naar jezelf wanneer het concert beschikbaar is.

Soms geeft Songkick zelfs de link tickets kopen weer op hun website. Maar deze link zou naar een verschillende website voor verschillende concerten. Het betekent dat het erg moeilijk is om automatisch tickets te kopen, zelfs als we gebruik maken van webscraping.

In plaats daarvan kunnen we gewoon de link tickets kopen weergeven zoals deze is in onze applicatie voor handmatige actie.

6- Gratis automatisch verlengen Lets Encrypt SSL-certificaten

SSL-certificaten

Lets Encrypt is een certificeringsinstantie die gratis SSL-certificaten aanbiedt. Maar het probleem is dat dit certificaat slechts 90 dagen geldig is. Na 90 dagen moet je het vernieuwen.

Naar mijn mening is dit een geweldig scenario voor automatisering met Python. We kunnen een code schrijven die automatisch het SSL-certificaat van een website vernieuwt voordat het verloopt.

Bekijk deze code op GitHub voor inspiratie.

7- Herken individuen in de menigte

Gezichtsherkenning

Tegenwoordig hadden regeringen bewakingscameras op openbare plaatsen geïnstalleerd om de veiligheid van hun burgers te vergroten. De meeste van deze cameras zijn alleen bedoeld om video op te nemen en dan moeten de forensische experts de persoon handmatig herkennen of traceren.

Wat als we een Python-programma maken dat elke persoon in de camera in realtime herkent? Allereerst hebben we toegang nodig tot een nationale identiteitskaartdatabase, die we waarschijnlijk niet hebben.

Het is dus een gemakkelijke optie om een database aan te maken met de gegevens van uw gezinsleden.

U kunt vervolgens een bibliotheek met gezichtsherkenning gebruiken en deze verbinden met de uitvoer van de camera.

8- Contactopsporing

Contact Tracing App

Contact Tracing is een manier om alle die mensen die tijdens een bepaalde periode met elkaar in contact komen. Het is vooral nuttig bij een pandemie zoals COVID-19 of HIV. Omdat we zonder enige gegevens over wie besmet is, de verspreiding ervan niet kunnen stoppen.

Python kan worden gebruikt met een machine learning-algoritme genaamd DBSCAN (Density-Based Spatial Clustering of Applications with Noise) voor het traceren van contacten.

Omdat dit slechts een bijproject is, hebben we dat niet toegang tot officiële gegevens. Voorlopig is het beter om enkele realistische testgegevens te genereren met g Mockaroo.

U kunt dit artikel eens bekijken voor specifieke code-implementatie.

9- Bestanden automatisch verplaatsen van de ene map naar de andere

Nautilus File Manager in Ubuntu

Dit is een heel eenvoudig Python-programma dat een map blijft monitoren. Telkens wanneer een bestand aan die map wordt toegevoegd, controleert het het type en verplaatst het dienovereenkomstig naar een specifieke map.

We kunnen bijvoorbeeld onze downloadmap volgen. Wanneer een nieuw bestand wordt gedownload, wordt het automatisch naar een andere map verplaatst, afhankelijk van het type.

.exe-bestanden zijn hoogstwaarschijnlijk software-instellingen, dus verplaats ze naar de map “software”. , bewegende afbeeldingen (png, jpg, gif) in de map “afbeeldingen”.

Op deze manier kunnen we verschillende soorten bestanden ordenen voor snelle toegang.

10- Verzamel loopbaanvideos Van YouTube

YouTube-startpagina

Maak een applicatie die de namen accepteert van vaardigheden die we moeten leren voor een carrière.

Om bijvoorbeeld een webontwikkelaar te worden, moeten we leren :

Na het invoeren van de vaardigheden, wordt er een knop “Carrièrepad genereren” weergegeven. Hiermee wordt ons programma geïnstrueerd om op YouTube te zoeken en relevante videos / afspeellijsten te selecteren op basis van elke vaardigheid. Voor het geval er veel vergelijkbare videos zijn voor vaardigheid, dan zal het degene selecteren met de meeste views, commentaren, likes, et c.

Het programma groepeert deze videos vervolgens op basis van vaardigheden en geeft hun miniatuur, titel en link weer in de GUI.

Het analyseert ook de duur van elke video en verzamelt ze , en laat ons weten hoeveel tijd het kost om dit carrièrepad te leren.

Nu kunnen we als gebruiker deze videos bekijken die stapsgewijs worden besteld om een meester te worden in deze carrière.

Conclusie

Jezelf uitdagen met unieke programmeerprojecten houdt je actief, verbetert je vaardigheden en helpt je nieuwe mogelijkheden te ontdekken.

Een deel van het project Ideeën die ik hierboven noemde, kunnen ook worden gebruikt als je laatstejaarsproject.

Het is tijd om je creativiteit te tonen met de programmeertaal Python en deze ideeën om te zetten in iets waar je trots op zult zijn.

Bedankt om te lezen!

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *