11 Python-bibliotek och moduler som alla utvecklare bör känna till

Bibliotek och moduler gör livet för en programmerare smidigt.

När du arbetar med projekt kan du stöta på scenarier där du inte kommer att kunna lösa med standardkodningen av ett programmeringsspråk. Vi behöver några bibliotek och moduler för att lösa dessa problem.

Lyckligtvis stöder Python en uppsjö av moduler och bibliotek. Python har inbyggda moduler samt tredjepartsbibliotek och moduler för utvecklingen. Vi kommer att se både integrerade och tredjepartsmoduler, som är mycket fördelaktiga för Python-projekt. Låt oss först utforska de inbyggda modulerna.

# Inbyggda moduler

Python kommer med massor av inbyggda moduler för olika användningsfall. Vi kommer att studera modulerna en efter en enligt användningen.

Samlingar – Behållardatatyper

Python har olika typer av samlingar för att lagra insamlingen av data. Till exempel, tuple, list, dict, etc.., är några av de inbyggda samlingarna i Python. Samlingsmodulen ger ytterligare funktioner till de inbyggda samlingarna.

Om du tar deque-datainsamling från samlingsmodulen, är det mer som en Python-lista. Men vi kan trycka och trycka på elementen från båda sidor. Det är snabbare än listan. Du kan använda deque baserat på dina behov. Låt oss se lite riktig kodning med collections.deque-datainsamling.

import collections
nums = [1, 2, 3]
# creating deque collection from the list
deque = collections.deque(nums)

print(deque)

# adding an element at the end
deque.append(4)

print(deque)

# adding element at the starting
deque.appendleft(0)

print(deque)

# removing the element at the end
deque.pop()

print(deque)

# removing element at the starting
deque.popleft()

print(deque)

Kör ovanstående kod; se resultatet. Vi har även andra datainsamlingar i samlingsmodulen.

Några av dem är:

Disken
Returnerar ett dikt som innehåller frekvensen av element från listan.

Det är en underklass till dict-klassen.

Användarlista
Används för en snabb underklass av listan.
UserDict
Används för en snabb underklass av dikten.
UserString
Används för en snabb underklass av str.

Gå till dokumentationen för samlingar modul för att utforska alla datainsamlingar och metoder.

Snabbanteckning: – Använd den inbyggda dir(object) metoden i Python för att se alla metoder för ett objekt.

CSV – filhantering

Vi kan använda CSV-filer (kommaseparerade värden) för att lagra tabelldata. Det vanligaste formatet för att importera och exportera data från kalkylblad och databaser. Python kommer med en modul som heter CSV för att hantera CSV-filerna.

Låt oss se ett exempel på att läsa data från en CSV-fil.

Skapa en fil med namnet sample.csv på din bärbara dator och klistra in följande data.

Name,Age,Graduation Year

Hafeez,21,2021

Aslan,23,2019

Rambabu,21,2021

Vi har metoder för att läsa och skriva i CSV-modulen. Vi kommer att se hur man läser data från CSV-filerna med hjälp av CSV-modulen.

import csv

with open('sample.csv') as file:
    # creating the reader
    reader = csv.reader(file)
    
    # reading line by line using loop
    for row in reader:
        # row is a list containing elements from the CSV file
        # joingin the list using join(list) method
        print(','.join(row))

Kör ovanstående kod för att se resultatet.

Vi kommer också att ha ett objekt som heter csv.writer() för att skriva in data i CSV-filen. Spela med de andra metoderna på egen hand med de inbyggda dir() och help()metoderna. Vi har en annan modul som heter JSON, som används för att hantera JSON-filerna. Det är också en inbyggd modul.

Slumpmässig – generation

Python har en modul som kallas slumpmässig som gör det möjligt att generera data slumpmässigt. Vi kan producera vad som helst slumpmässigt med olika sätt av slumpmodulen. Du kan använda den här modulen i applikationer som tic-tac-toe, ett tärningsspel, etc..,

Låt oss se ett enkelt program för att generera slumpmässiga heltal från ett givet intervall.

import random

# generating a random number from the range 1-100
print(random.randint(1, 100)) 

Du kontrollerar de andra metoderna i slumpmodulen med metoderna dir() och help(). Låt oss skriva ett litet och enkelt spel med den slumpmässiga modulen. Vi kan kalla det ett talgissningsspel.

Vad är nummergissningsspelet?

Programmet kommer att generera ett slumptal i intervallet 1 – 100. Användaren kommer att gissa numret tills det matchar det slumptal som genereras av programmet. Varje gång kommer du att skriva ut om användarnumret är mindre än slumptalet eller högre än slumptalet. Sedan kommer källkoden att visa antalet gissningar.

Se koden nedan för programmet ovan.

# importing random module
import random

# generating random number
random_number = random.randint(1, 100)

# initializing no. of guess to 0
guess_count = 0

# running loop until user guess the random number
while True:
    # getting user input

    user_guessed_number = int(input("Enter a number in the range of 1-100:- "))

    # checking for the equality
    if user_guessed_number == random_number:
        print(f"You have guessed the number in {guess_count} guesses")
        # breaking the loop
        break
    elif user_guessed_number < random_number:
        print("Your number is low")
    elif user_guessed_number > random_number:
        print("Your number is high")

    # incrementing the guess count
    guess_count += 1

Tkinter – GUI-applikationer

Tkinter är en inbyggd modul för utveckling av GUI-applikationer (Graphical User Interface). Det är bekvämt för nybörjare. Vi kan utveckla GUI-applikationer som kalkylator, inloggningssystem, textredigerare, etc.., Det finns många resurser där ute för att lära sig GUI-utvecklingen med Tkinter.

Det bästa stödet är att följa tjänstemannen docs. För att komma igång med Tkinter, gå till dokumenten och börja skapa vackra GUI-applikationer.

# Tredjepartsmoduler

Förfrågningar – HTTP-förfrågningar

Requests-modulen används för att skicka alla typer av HTTP-förfrågningar till servern. Det tillåter HTTP/1.1-förfrågningar att skicka. Vi kan också lägga till rubriker, data och andra saker med Python-ordböcker. Eftersom det är en tredjepartsmodul måste vi installera den. Kör följande kommando i terminalen eller kommandoraden för att installera förfrågningsmodulen.

pip install requests

Det är enkelt att arbeta med modulen förfrågningar. Vi kan börja arbeta med förfrågningarna utan några förkunskaper. Låt oss se hur man skickar en get-förfrågan och vad den returnerar.

import requests

# sening a get request
request = requests.get("https://www.google.com/")

# 
print(request.status_code)
print(request.url)
print(request.request)

Ovanstående kod kommer att skriva ut status_code, URL och begäran metod (GET, POST). Du kommer också att få källan till webbadressen. Du kan komma åt den med request.content-byten. Gå till docs av modulen förfrågningar och utforska mer.

BeautifulSoup4 – webbskrapning

BeautifulSoup-biblioteket används för webbskrapning. Det är en praktisk modul att arbeta med. Även nybörjare kan börja arbeta med det med hjälp av docs. Se exempelkoden för att ta bort kundrapportdetaljerna.

Du kan installera BeautifulSoup genom att skriva följande kommando i terminalen/kommandoraden.

pip install beautifulsoup4

Och ett enkelt program för din första skrapning.

## Scrping the ConsumerReport products list using BeautifulSoup

## importing bs4, requests modules
import bs4
import requests

## initializing url
url = "https://www.consumerreports.org/cro/a-to-z-index/products/index.htm"

## getting the reponse from the page using get method of requests module
page = requests.get(url)

## storing the content of the page in a variable
html = page.content

## creating BeautifulSoup object
soup = bs4.BeautifulSoup(html, "lxml")

## see the class or id of the tag which contains names ans links
div_class = "crux-body-copy"

## getting all the divs using find_all method
div_tags = soup.find_all("div", class_=div_class) ## finding divs whichs has mentioned class

## we will see all the tags with a tags which has name and link inside the div
for tag in div_tags:
    print(tag)

Kör koden ovan för att se magin med webbskrapning. Det finns fler webbskrapningsramar där ute som du kan prova.

# Datavetenskap och maskininlärning

Det finns några bibliotek där ute speciellt skapade för datavetenskap och maskininlärning. Alla dessa är utvecklade i C. De är blixtsnabba.

Numpy

Numpy används för vetenskaplig beräkning.

Det låter oss arbeta med flerdimensionella arrayer. Arrays-implementering finns inte i Python. Främst använder utvecklarna numpy i sina maskininlärningsprojekt. Det är lätt att lära sig och ett bibliotek med öppen källkod. Nästan varje maskininlärningsingenjör eller datavetare använder den här modulen för komplexa matematiska beräkningar.

Kör följande kommando för att installera numpy-modulen.

pip install numpy

Pandas

Pandas är en dataanalysmodul. Vi kan filtrera data mest effektivt med hjälp av pandas bibliotek. Det erbjuder olika typer av datastrukturer som är praktiska att arbeta. Det ger också filhantering med olika filformat.

Installera modulen med följande kommando.

pip install pandas

Matplotlib

Matplotlib är ett 2D-grafritningsbibliotek. Du kan visualisera data med Matplotlib.

Vi kan skapa bilder av figurerna i olika format. Vi ritar olika typer av diagram som stapeldiagram, feldiagram, histogram, scatterplots, etc.. Du kan installera matplotlib med följande kommando.

pip install matplotlib

Snabb anmärkning: – Du kan installera Anakonda för att få alla bibliotek och moduler som krävs för Data Science.

Om du menar allvar med att lära dig Python för datavetenskap och ML, kolla in den här briljanta Udemy kurs.

# Web Frameworks

Vi kan hitta många webbramverk i Python. Vi kommer att diskutera två ramverk som används flitigt av utvecklarna. De två ramverken är Django och Flask.

Django

Django är ett webbramverk med öppen källkod utvecklat i Python. Det är bekvämt att skapa webbplatser med Django. Vi kan skapa alla typer av webbplatser med detta ramverk. Några av de mest populära webbplatserna som byggts med Django är Instagram, bitbucket, Disqus, Mozilla Firefox, etc.,

  • Vi kan snabbt bygga komplexa webbplatser med funktionerna i Django.
  • Django gör redan många av de uppgifter som krävs för webbutveckling.
  • Det ger också säkerhet för attackerna SQL Injection, cross-site scripting, cross-site request förfalskning och clickjacking.
  • Vi kan bygga vilken webbplats som helst från innehållshanteringssystemet till sociala webbplatser.

Dokumentationen av Django är entydig. Du måste bekanta dig med Python för Django. Men oroa dig inte om du inte är det. Att lära sig Django är lätt.

Flaska

Flask är ett mikrowebbramverk utvecklat i Python.

Det är mer pytoniskt än Django. Den har utmärkt dokumentation här. Den använder Jinja mallmotor. Det är mycket komplicerat att skapa stora webbplatser Flask. De flesta funktioner som URL-routing, Begäranvändning, Säkra cookies, Sessioner, etc., finns i både Django och Flask.

Välj ramverket baserat på komplexiteten på din webbplats. Django vinner popularitet bland utvecklare. Det är det mest använda ramverket för webbutveckling i Python.

Slutsats

Jag hoppas att du lärde dig om olika moduler, bibliotek och ramverk för Python.

Alla en gång nybörjare.

Vad du än vill börja, gå först till dokumentationen och börja lära dig det. Om du inte kan förstå dokumenten, hitta snabbkurser på utbildningswebbplatser.