5 coola saker du kan göra med Python

Python utmärker sig som ett av de mest uppskattade programmeringsspråken i världen.

Det är inte svårt att förstå varför; Python möjliggör skapandet av allt från simpla automatiseringsskript till avancerade applikationer inom maskininlärning. Det finns otaliga intressanta projekt du kan realisera med Python, och du kommer att finna inlärningsprocessen mycket givande.

Introduktion

Python är ett omtyckt språk bland utvecklare, känt för sin enkelhet och förmåga att automatisera uppgifter och skapa olika typer av program.

Några av de vanligaste användningsområdena inkluderar:

  • Utveckling av bots
  • Webbskrapning
  • Maskininlärning, datavisualisering och analys
  • Webbutveckling med ramverk som Django och Flask
  • Spelutveckling med Pygame
  • Mobilapplikationsutveckling med ramverk som Kivy

I denna artikel kommer jag att presentera exempel inom flera olika områden och visa några av de fascinerande möjligheterna som Python erbjuder. Om du inte redan behärskar Python, rekommenderar jag starkt att du börjar lära dig det!

Låt oss nu dyka in i materien!

Webbutveckling med Python

Python har utmärkt stöd för webbutveckling genom olika ramverk såsom Django, Flask och andra. Dessa kan användas för att skapa server-side webbapplikationer som enkelt kan integreras med vilken frontend som helst. Vanligtvis kombinerar utvecklare JavaScript för klient-side logik och Python för server-side operationer. Python exekveras inte direkt i webbläsare.

Django är ett av de mest populära webbramverken för Python. Dessa ramverk erbjuder en komplett struktur med inbyggt stöd för databasinteraktioner, vilket förenklar utvecklingsprocessen avsevärt. Om du föredrar ett lättviktigt ramverk för att starta, rekommenderas Flask starkt.

Utöver dessa ramverk finns ett stort antal bibliotek för webbutveckling i Python. Några välkända exempel är:

Resurser för att komma igång med Python-baserad webbutveckling:

Exempel – Få tillgång till filsystemet från en mobil enhet

Du kan enkelt komma åt ditt filsystem genom att köra en enkel filserver på din dator. Navigera till den önskade katalogen och kör följande kommando:

# python version >=  3.X
python3 -m http.server

# Om Python version >= 2.X och < 3.X
python -m SimpleHTTPServer
#standard port: 8000
  

Detta startar en filserver som kan nås via samma nätverk. För att komma åt filerna från din mobila enhet, se till att den är ansluten till samma nätverk (via Wi-Fi eller mobil hotspot). Öppna sedan en webbläsare på mobilen och skriv in:

:port

Du kan hitta din IP-adress genom att köra kommandot ’ifconfig’ i terminalen. Leta efter din lokala IP-adress (som brukar börja med 192.168…).

Om din IP-adress är 192.168.43.155, och du använder standardporten, ska du skriva följande i din mobila webbläsare:

192.168.43.155:8000. Nu kommer du att se den aktuella katalogen i webbläsaren.

Automatisering och skript

Som ingenjör kanske du vill automatisera så mycket som möjligt? Python erbjuder fantastiska möjligheter för detta.

Python låter dig automatisera en rad olika uppgifter med bara några få rader kod. Allt från att ställa in cron-jobb och påminnelser till att ladda ner videor från YouTube kan utföras med hjälp av Python.

Några praktiska skript och paket som du kan använda:

Exempel – Konvertera CSV till JSON

Du kan enkelt konvertera en CSV-fil till JSON-format med ett enda kommando i Python.

Testa själv:

python -c "import csv,json;print json.dumps(list(csv.reader(open('your_csv_file.csv'))))"
  

Ersätt ’your_csv_file.csv’ med ditt faktiska filnamn, och du får en JSON-utdata.

Enkelt, eller hur?

Spelutveckling med Python

Python är ett utmärkt val för spelutveckling. Biblioteket Pygame erbjuder omfattande stöd för att skapa spel med grafik, ljud och multimedia. Du kan även skapa plattformsoberoende spel med Kivy, som fungerar på Windows, Mac, Linux, Android och iOS.

Resurser för inlärning

Exempel – Hänga gubbe i terminalen

Här är ett enkelt Python-program som låter dig spela hänga gubbe i terminalen. Koden kan optimeras, och det får du gärna göra som en övning!

# hangman.py
#importera tidsmodulen
import time
import random

turns = 10

print "Hej, låt oss spela hänga gubbe! Du har " + str(turns) + " försök!"

print ""

# fördröjning
time.sleep(0.5)

# en lista med ord att gissa från
wordList = ["geekflare", "awesome", "python", "magic"]
word = random.choice(wordList)

guesses=""

# loop tills alla försök är slut
while turns > 0:         
    wrong = 0             

    for char in word:      
        if char in guesses:    
            print char,    
        else:
            print "_",     
            wrong += 1    

    print("n")

    if wrong == 0:        
        print "Du vann :)"  

        break              

    print

    guess=""
    if len(guess) < 1:
        guess = raw_input("Gissa en bokstav eller hela ordet: ")[0]

    guesses += guess                    

    if guess not in word:  
        turns -= 1        
 
        print "Fel"    
 
        print "Du har", + turns, ' försök kvar!' 
 
        if turns == 0:           
    
            print "Du förlorade :("
  

Utdata kan se ut ungefär så här:

Webbskrapning

Du ser stora mängder data på olika webbplatser dagligen. Tänk om du enkelt kunde komma åt den datan? Det är precis vad webbskrapning handlar om, och Python gör det enkelt med sina fantastiska bibliotek. Informationen på webben är ofta ostrukturerad, men Python erbjuder verktyg för att analysera, bearbeta och extrahera värdefull data.

Några populära bibliotek för webbskrapning är:

Låt mig visa ett exempel på hur man skrapar valutaväxlingskurser från en webbplats (x-rates.com).

Exempel – Hämta valutakurser mot USD

Använd Python för att skrapa data om valutakurser:

import requests 
from bs4 import BeautifulSoup 
  
URL = "https://www.x-rates.com/table/?from=USD&amount=1"
r = requests.get(URL) 

soup = BeautifulSoup(r.content, 'html.parser') 
ratelist = soup.findAll("table", {"class": "ratesTable"})[0].findAll("tbody")

for tableVal in ratelist:
	trList = tableVal.findAll('tr')
	for trVal in trList[:6]:
		print(trVal.text)
  

Detta kommer att visa hur mycket 1 USD är värd i andra valutor.

Datavetenskap och maskininlärning

Datavetenskap (DS) och maskininlärning (ML) är mycket populära och framstående områden inom teknik.

Python är väl lämpat för datamanipulation, analys och implementering av komplexa algoritmer. Dataanalys och visualisering kan enkelt genomföras med några rader kod med hjälp av bibliotek som NumPy, SciPy och scikit-learn.

Python kan användas i dataintensiva applikationer och inom maskininlärning med många bibliotek som:

Det finns även många verktyg för djupinlärning som stöder Python, exempelvis:

En annan anledning till att Python är populärt inom ML är att komplexa modeller kan skapas med relativt få rader kod. Kolla in den här handledningen för att se hur enkelt visualiseringar kan skapas med Python.

Slutsats

Denna artikel har utforskat olika områden där Python kan användas. De presenterade exemplen är avsedda att illustrera några av de spännande möjligheterna, och det finns otaliga fler fantastiska applikationer och verktyg som du kan bygga med Python. Jag hoppas att du har lärt dig något nytt!

Fortsätt utforska. Fortsätt lära!