Visste du at Python er kjent som et allsidig programmeringsspråk?
Ja, det er det, selv om det ikke skal brukes på hvert enkelt prosjekt,
Du kan bruke den til å lage stasjonære applikasjoner, spill, mobilapper, nettsteder og systemprogramvare. Det er til og med det mest egnede språket for implementering av algoritmer for kunstig intelligens og maskinlæring.
Så, jeg brukte de siste ukene på å samle unike prosjektideer for Python-utviklere. Disse prosjektideene vil forhåpentligvis bringe tilbake interessen din for dette fantastiske språket. Det beste er at du kan forbedre Python-programmeringsferdighetene dine med disse morsomme, men utfordrende prosjektene.
La oss ta en titt på dem en etter en.
1- Lag en programvare GUI ved hjelp av talekommandoer
I disse dager har det blitt gjort store fremskritt innen desktop applikasjonsutvikling. Du vil se mange dra & slippe GUI-byggere og talegjenkjenningsbiblioteker. Så hvorfor ikke koble dem sammen og lage et brukergrensesnitt ved å snakke med datamaskinen?
Dette er bare et nytt konsept, og etter noen undersøkelser fant jeg ut at ingen noen gang har prøvd å gjøre det. Så det kan være litt mer utfordrende enn de som er nevnt nedenfor.
Her er noen instruksjoner for å komme i gang med dette prosjektet ved hjelp av Python. Først og fremst trenger du disse pakkene: –
- Talegjenkjenningsbibliotek
- SIDE – Dra & Drop GUI Builder
- Dokumentasjon
- Video av hvordan PAGE fungerer
- Opprett påloggingsvindu ved hjelp av PAGE
Nå, ideen er å hardkode noen talekommandoer som:
Talekommandoer | Beskrivelse |
---|---|
Legg til inndatafelt i vindu | Det drar et inndatafelt fra «Widget-verktøylinjen ”Og slipp den i hovedvinduet vårt. |
Flytt INPUT_FIELD_NAME til venstre / høyre / topp / bunn / midt i vinduet | Det vil flytte et bestemt inndatafelt til den nevnte plasseringen. |
Flytt INPUT_FIELD_NAME 5px opp / ned / venstre / rigg ht | Denne kommandoen instruerer programmene om å endre posisjonen til et bestemt inndatafelt som nevnt av piksler og retning. |
Endre INPUT_FIELD_NAME farge til rød / # ff0000 | Bare endre skriftfargen til et bestemt inndatafelt. |
Du skjønner, ikke sant? Det er veldig enkelt og greit å legge til flere kommandoer som disse.
Ettersom dette kommer til å være et minimum levedyktig produkt (MVP). Så det vil være helt ok hvis du må hardkode mange betingede utsagn (f.eks. Hvis … annet).
Etter å ha konfigurert noen grunnleggende kommandoer, er det på tide å teste koden. For nå kan du prøve å bygge et veldig grunnleggende påloggingsskjema i et vindu.
Den største fleksibiliteten til denne ideen er at den kan implementeres for spillutvikling, nettsteder og mobilapper. Selv på forskjellige programmeringsspråk.
2- AI Betting Bot
Betting er en aktivitet der folk forutsier et resultat, og hvis de har rett, får de en belønning i retur. Nå er det mange teknologiske fremskritt som har skjedd innen kunstig intelligens eller maskinlæring de siste årene.
For eksempel har du kanskje hørt om programmer som AlphaGo Master, AlphaGo Zero og AlphaZero som kan spille Go (spill) bedre enn noen profesjonell menneskelig spiller. Du kan til og med få kildekoden til et lignende program som heter Leela Zero.
Poenget jeg vil formidle er at AI blir smartere enn oss. Det betyr at det kan forutsi noe bedre ved å ta hensyn til alle mulighetene og lære av tidligere erfaringer.
La oss bruke noen overvåket læringskonsepter i Python for å lage en AI Betting Bot. Her er noen biblioteker du trenger for å komme i gang.
- pandaer – Dataanalyse
- NumPy – Flerdimensjonale matriser, matriser og matematiske funksjoner
- scikit-learning – Machine Learning
- XGBoost – Gradient Boosting
- Matplotlib – Plotting
- seaborn – Statistical Data Visualization
- pickle – Python Object Serialisering
Først må du velge et spill (f.eks. Tennis, fotball osv.) For å forutsi resultatene.Nå søker du etter historiske treffresultatdata som kan brukes til å trene modellen.
For eksempel kan dataene om tenniskamper lastes ned i .csv-format fra nettstedet tennis-data.co.uk.
Hvis du ikke er kjent med spill, her fungerer det slik.
Etter å ha trent modellen, må vi beregne konfidensnivået for hver spådom, finne ut ytelsen til vår bot ved å sjekke hvor mange ganger prediksjonen var riktig, og til slutt også holde et øye med Return On Investment (ROI).
Last ned et lignende open source AI Betting Bot Project av Edouard Thomas.
3- Handelsbot
Trading Bot er veldig likt det forrige prosjektet fordi det også krever AI for prediksjon.
Nå er spørsmålet om en AI kan forutsi svingning av aksjekurser?
Og svaret er ja.
Før vi begynner, trenger vi ikke redigerte noen data for å utvikle en handelsbot.
- Yahoo! Økonomi – for å få aksjedata
- Alpha Vantage – Sanntids-API for økonomiske data
Disse ressursene fra Investopedia kan hjelpe deg med å trene bot.
- Handelsstrategier for nybegynnere
- Gjør bare en handel hvis den består denne 5-trinns testen
Etter å ha lest begge disse artiklene, vil du nå ha en bedre forståelse av når du skal kjøpe aksjer og når ikke. Denne kunnskapen kan enkelt forvandles til et Python-program som automatisk tar avgjørelsen for oss.
Du kan også ta referanse fra denne open source trading bot kalt freqtrade. Den er bygget ved hjelp av Python og implementerer flere maskinlæringsalgoritmer.
4- Iron Man Jarvis (AI-basert virtuell assistent)
Denne ideen er hentet fra Hollywood-filmserien Iron Mann. Filmen dreier seg om teknologi, roboter og AI.
Her har Iron Man bygget en virtuell assistent for seg selv ved hjelp av kunstig intelligens. Programmet er kjent som Jarvis som hjelper Iron Man i daglige oppgaver.
Iron Man gir instruksjoner til Jarvis ved hjelp av et enkelt engelsk språk, og Jarvis svarer også på engelsk. Det betyr at programmet vårt trenger talegjenkjenning samt tekst-til-tale-funksjonalitet.
Jeg vil anbefale å bruke disse bibliotekene:
- Talegjenkjenning
- Tekst til tale (TTS)
For øyeblikket kan du hardkode talekommandoer som:
Talekommandoer | Eksempel | Beskrivelse |
---|---|---|
Åpne SOFTWARE_NAME | Åpne Google Chrome | Åpne et installert program på datamaskinen din. |
KEYWORD Wikipedia | Donald Trump Wikipedia | Det vil søke i Wikipedia etter et bestemt nøkkelord og lese innholdet ved hjelp av tekst-til-tale-funksjonalitet. |
Scan DRIVE_NAME / FOLDER_NAME / FILE_NAME | Scan C Drive | Gjennom denne kommandoen instruerer Jarvis antivirusprogramvaren om å utføre en skanning. |
Yo Du kan også bruke Jarvis til mange andre oppgaver som:
- Still alarm på mobil.
- Sjekk kontinuerlig hjemmets sikkerhetskamera og informer i tilfelle noen venter utenfor. Du kan legge til flere funksjoner som ansiktsgjenkjenning og gjenkjenning. Det hjelper deg å finne ut hvem eller hvor mange som er der.
- Åpne / lukke vinduer i rommet.
- Slå på / av lys.
- Svar automatisk på e-post .
- Planlegg oppgaver.
Selv grunnleggeren av Facebook, «Mark Zuckerberg» har bygd en Jarvis som et sideprosjekt.
5 – Overvåk et nettsted for å bli informert om en kommende artistkonsert
Songkick er en veldig populær tjeneste som gir informasjon om kommende konserter. API-en kan brukes til å søke etter kommende konserter av:
- Artist
- Location
- Venue
- Date and Time
Du kan opprette et Python-skript som fortsetter å sjekke en bestemt konsert daglig ved hjelp av Songkicks API. Send til slutt en e-post til deg selv når konserten er tilgjengelig.
Noen ganger viser Songkick til og med lenker til kjøp av billetter på nettstedet deres. Men denne lenken kan gå til en annen nettside for forskjellige konserter. Det betyr at det er veldig vanskelig å kjøpe billetter automatisk, selv om vi bruker nettskraping.
Snarere kan vi ganske enkelt vise lenken Kjøp billetter slik det er i vår søknad om manuell handling.
6- Forny automatisk gratis La oss kryptere SSL-sertifikater
Lets Encrypt er en sertifikatmyndighet som tilbyr gratis SSL-sertifikater. Men problemet er at dette sertifikatet bare er gyldig i 90 dager. Etter 90 dager må du fornye den.
Etter min mening er dette et flott scenario for automatisering ved bruk av Python. Vi kan skrive noen kode som automatisk fornyer et SSL-sertifikat på nettstedet før det utløper.
Sjekk ut denne koden på GitHub for inspirasjon.
7- Gjenkjenne personer i mengden
I disse dager hadde regjeringer installert overvåkingskameraer på offentlige steder for å øke sikkerheten til innbyggerne. De fleste av disse kameraene er bare for å ta opp video, og da må de rettsmedisinske ekspertene manuelt gjenkjenne eller spore individet.
Hva om vi lager et Python-program som gjenkjenner hver person i kameraet i sanntid. Først og fremst trenger vi tilgang til en nasjonal ID-kortdatabase, som vi sannsynligvis ikke har.
Så, et enkelt alternativ er å opprette en database med dine familiemedlemmers poster.
Du kan deretter bruke et ansiktsgjenkjenningsbibliotek og koble det til kameraets utgang.
8- Kontaktsporing
Kontaktsporing er en måte å identifisere alle de menneskene som kommer i kontakt med hverandre i løpet av en bestemt tidsperiode. Det er mest nyttig i en pandemi som COVID-19 eller HIV. Fordi uten noen data om hvem som er smittet, kan vi ikke stoppe spredningen.
Python kan brukes med en maskinlæringsalgoritme kalt DBSCAN (Density-Based Spatial Clustering of Applications with Noise) for kontaktsporing.
Siden dette bare er et sideprosjekt, har vi ikke tilgang til offisielle data. Foreløpig er det bedre å generere noen realistiske testdata som brukes g Mockaroo.
Du kan se på denne artikkelen for spesifikk kodeimplementering.
9- Flytt filer automatisk fra en mappe til en annen
Dette er et veldig grunnleggende Python-program som fortsetter å overvåke en mappe. Når en fil legges til i den mappen, sjekker den typen og flytter den til en bestemt mappe i samsvar.
For eksempel kan vi spore nedlastingsmappen vår. Nå, når en ny fil lastes ned, blir den automatisk flyttet i en annen mappe i henhold til typen.
.exe-filer er sannsynligvis programvareoppsett, så flytt dem inn i «programvare» -mappen. , flytte bilder (png, jpg, gif) i «bilder» -mappen.
På denne måten kan vi organisere forskjellige typer filer for rask tilgang.
10- Samle videoer om karriereveien Fra YouTube
Opprett et program som godtar navnene på ferdighetene vi trenger å lære for en karriere.
For eksempel, for å bli en webutvikler, må vi lære :
Etter at du har lagt inn ferdighetene, vil det være en «Generer karrierevei» -knapp. Den instruerer programmet vårt om å søke på YouTube og velge relevante videoer / spillelister i henhold til hver ferdighet. Hvis det er mange lignende videoer for dyktighet så vil den velge den med flest visninger, kommentarer, likes, et c.
Programmet grupperer deretter disse videoene etter ferdigheter og viser miniatyrbilde, tittel og lenke i brukergrensesnittet.
Det vil også analysere varigheten på hver video, samle dem , og informer oss om hvor lang tid det vil ta å lære denne karriereveien.
Nå, som bruker, kan vi se disse videoene som bestilles trinnvis for å bli en mester i denne karrieren.
Konklusjon
Å utfordre deg selv med unike programmeringsprosjekter holder deg aktiv, forbedrer ferdighetene dine og hjelper deg med å utforske nye muligheter.
Noen av prosjektet ideer jeg nevnte ovenfor kan også brukes som ditt Final Year Project.
Det er på tide å vise kreativiteten din med Python-programmeringsspråk og gjøre disse ideene til noe du vil være stolt av.
Takk for lesing!