11 Python-könyvtár és -modul, amelyet minden fejlesztőnek tudnia kell

A könyvtárak és modulok simává teszik a programozó életét.

Amikor projektekkel dolgozik, olyan forgatókönyvekkel találkozhat, amelyeket nem fog tudni megoldani egy programozási nyelv szabványos kódolásával. Szükségünk van néhány könyvtárra és modulra, hogy megoldjuk ezeket a problémákat.

Szerencsére a Python rengeteg modult és könyvtárat támogat. A Python beépített modulokkal, valamint harmadik féltől származó könyvtárakkal és modulokkal rendelkezik a fejlesztéshez. Látni fogunk integrált és harmadik féltől származó modulokat is, amelyek nagyon előnyösek a Python projektek számára. Először nézzük meg a beépített modulokat.

# Beépített modulok

A Python rengeteg beépített modullal érkezik a különböző használati esetekhez. A modulokat a felhasználásnak megfelelően egyenként tanulmányozzuk.

Gyűjtemények – Tároló adattípusok

A Python különböző típusú gyűjteményekkel rendelkezik az adatgyűjtés tárolására. Például a tuple, lista, dict stb. a Python néhány beépített gyűjteménye. A gyűjtemények modul további funkciókat biztosít a beépített gyűjteményekhez.

Ha a deque adatgyűjtést a gyűjtemények modulból veszed, az inkább egy Python-lista. De az elemeket mindkét oldalról tolhatjuk és pattinthatjuk. Gyorsabb, mint a lista. Igényei alapján használhatja a deque-t. Lássunk néhány valódi kódolást a collections.deque adatgyűjtéssel.

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)

Futtassa a fenti kódot; lásd az eredményeket. Más adatgyűjtéseink is vannak a gyűjtési modulban.

Néhány közülük:

Számláló
A lista elemeinek gyakoriságát tartalmazó diktátumot ad vissza.

Ez a dict osztály egyik alosztálya.

Felhasználólista
A lista gyors alosztályához használjuk.
UserDict
A diktátum gyors alosztályára használják.
UserString
Az str. gyors alosztályához használják.

Nyissa meg a dokumentációját gyűjtemények modul az összes adatgyűjtés és módszer feltárásához.

Gyors megjegyzés: Használja a Python beépített dir(object) metódusát az objektum összes metódusának megtekintéséhez.

CSV – fájlkezelés

A táblázatos adatok tárolására a CSV (vesszővel elválasztott értékek) fájlokat használhatjuk. A leggyakrabban használt formátum az adatok táblázatokból és adatbázisokból történő importálásához és exportálásához. A Python egy CSV nevű modullal érkezik a CSV-fájlok kezelésére.

Lássunk egy példát az adatok CSV-fájlból való kiolvasására.

  Mi a különbség a HTTP és a HTTPS között?

Hozzon létre egy sample.csv nevű fájlt laptopján, és illessze be a következő adatokat.

Name,Age,Graduation Year

Hafeez,21,2021

Aslan,23,2019

Rambabu,21,2021

Vannak metódusaink a CSV-modulban való olvasásra és írásra. Meglátjuk, hogyan olvassuk ki az adatokat a CSV-fájlokból a CSV-modul segítségével.

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))

Az eredmények megtekintéséhez futtassa a fenti kódot.

Lesz egy csv.writer() nevű objektumunk is, amely az adatokat a CSV-fájlba írja. Játssz önállóan a többi módszerrel a dir() és help() beépített metódusokkal. Van egy másik modulunk, a JSON, amely a JSON-fájlok kezelésére szolgál. Ez is egy beépített modul.

Véletlenszerű – generáció

A Pythonnak van egy véletlen nevű modulja, amely lehetővé teszi az adatok véletlenszerű generálását. Bármit véletlenszerűen előállíthatunk a véletlenszerű modul különböző módszereivel. Ezt a modult olyan alkalmazásokban használhatja, mint a tic-tac-toe, egy kockajáték stb.,

Lássunk egy egyszerű programot, amellyel egy adott tartományból véletlenszerű egész számokat állíthatunk elő.

import random

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

A véletlen modul többi metódusát a dir() és help() metódusokkal ellenőrizheti. Írjunk egy kicsi és egyszerű játékot a véletlenszerű modul segítségével. Nevezhetjük számkitalálós játéknak.

Mi az a számkitaláló játék?

A program egy 1 és 100 közötti véletlenszámot generál. A felhasználó addig találgatja a számot, amíg az meg nem egyezik a program által generált véletlen számmal. Minden alkalommal kinyomtatja, hogy a felhasználói szám kisebb-e, mint a véletlenszám, vagy nagyobb-e, mint a véletlenszám. Ezután a forráskód megjeleníti a találgatások számát.

Lásd az alábbi kódot a fenti programhoz.

# 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 alkalmazások

A Tkinter egy beépített modul a GUI (Graphical User Interface) alkalmazások fejlesztéséhez. Kezdőknek kényelmes. Fejleszthetünk GUI alkalmazásokat, például számológépet, bejelentkezési rendszert, szövegszerkesztőt stb.. Számos forrás áll rendelkezésre a Tkinterrel való grafikus felület fejlesztésének megtanulásához.

  Harmadik féltől származó felhőtárhely hozzáadása a Microsoft Teamshez

A legjobb támogatás a hivatalos követés dok. A Tkinter használatának megkezdéséhez nyissa meg a dokumentumokat, és kezdjen el gyönyörű grafikus felületű alkalmazásokat létrehozni.

# Harmadik féltől származó modulok

Kérések – HTTP kérések

A Requests modul mindenféle HTTP kérés küldésére szolgál a szervernek. Lehetővé teszi a HTTP/1.1 kérések küldését. Fejléceket, adatokat és egyéb dolgokat is hozzáadhatunk Python szótárak segítségével. Mivel ez egy harmadik féltől származó modul, telepítenünk kell. Futtassa a következő parancsot a terminálban vagy a parancssorban a kérések modul telepítéséhez.

pip install requests

A kérések modullal egyszerű dolgozni. A kérelmekkel minden előzetes tudás nélkül elkezdhetünk dolgozni. Nézzük meg, hogyan kell küldeni egy get kérést, és mit ad vissza.

import requests

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

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

A fenti kód kiírja az állapotkódot, az URL-t és a kérési módot (GET, POST). Megkapja az URL forrását is. A request.content bájtokkal érheti el. Menj a dok kérések modulból, és fedezzen fel többet.

BeautifulSoup4 – webkaparás

A BeautifulSoup könyvtárat a webkaparáshoz használják. Ez egy praktikus modul a munkához. Még a kezdők is elkezdhetnek vele dolgozni a dok. Tekintse meg a mintakódot az ügyféljelentések részleteinek törléséhez.

A BeautifulSoup telepítéséhez írja be a következő parancsot a terminálba/parancssorba.

pip install beautifulsoup4

És egy egyszerű program az első kaparáshoz.

## 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)

Futtassa a fenti kódot, hogy megtekinthesse a webkaparás varázsát. Több webkaparási keretrendszer is rendelkezésre áll, amelyeket kipróbálhat.

# Adattudomány és gépi tanulás

Vannak olyan könyvtárak, amelyeket kifejezetten az adattudományhoz és a gépi tanuláshoz hoztak létre. Mindezeket C-ben fejlesztették ki. Villámgyorsak.

  Hogyan tekinthet meg egy színt a HEX kódból

Dögös

Dögös tudományos számításokhoz használják.

Lehetővé teszi többdimenziós tömbök feldolgozását. A tömbök megvalósítása nem létezik a Pythonban. Főleg a fejlesztők használják a numpy-t gépi tanulási projektjeikben. Könnyen megtanulható és nyílt forráskódú könyvtár. Szinte minden gépi tanulási mérnök vagy adattudós használja ezt a modult összetett matematikai számításokhoz.

Futtassa a következő parancsot a numpy modul telepítéséhez.

pip install numpy

Pandák

Pandák egy adatelemző modul. Az adatokat leghatékonyabban a panda könyvtár segítségével tudjuk szűrni. Különféle típusú adatstruktúrákat kínál, amelyek könnyen használhatók. Fájlkezelést is biztosít különböző fájlformátumokkal.

Telepítse a modult a következő paranccsal.

pip install pandas

Matplotlib

Matplotlib egy 2D grafikon ábrázoló könyvtár. Az adatokat a Matplotlib segítségével vizualizálhatja.

A figurákról különböző formátumú képeket készíthetünk. Különböző típusú diagramokat ábrázolunk, például oszlopdiagramokat, hibadiagramokat, hisztogramokat, szórásdiagramokat stb., A matplotlib-et a következő paranccsal telepítheti.

pip install matplotlib

Gyors megjegyzés: – Telepítheti Anakonda hogy megkapja az adattudományhoz szükséges összes könyvtárat és modult.

Ha komolyan szeretné megtanulni a Pythont az adattudomány és az ML számára, akkor nézze meg ezt a zseniálisat Udemy tanfolyam.

# Webes keretrendszerek

A Pythonban számos webes keretrendszert találhatunk. Két, a fejlesztők által széles körben használt keretrendszerről fogunk beszélni. A két keretrendszer a Django és a Flask.

Django

Django egy nyílt forráskódú webes keretrendszer, amelyet Pythonban fejlesztettek ki. A Django segítségével kényelmes weboldalakat készíteni. Ezzel a keretrendszerrel bármilyen típusú webhelyet generálhatunk. A Django segítségével épített legnépszerűbb webhelyek közé tartozik az Instagram, a bitbucket, a Disqus, a Mozilla Firefox stb.,

  • A Django szolgáltatásaival gyorsan tudunk összetett weboldalakat készíteni.
  • A Django már sok olyan feladatot ellát, ami a webfejlesztéshez szükséges.
  • Ezenkívül biztonságot nyújt az SQL-befecskendezés, a webhelyek közötti szkriptek, a helyek közötti kérés-hamisítás és a kattintás elleni támadások ellen is.
  • A tartalomkezelő rendszertől a közösségi oldalakig bármilyen weboldalt fel tudunk építeni.

A Django dokumentációja egyértelmű. Ismernie kell a Python for Django-t. De ne aggódj, ha nem. Tanulás Django könnyű.

Lombik

A Flask egy Pythonban kifejlesztett mikro webes keretrendszer.

Pitonikusabb, mint a Django. Kiváló dokumentációval rendelkezik itt. A Jinja sablonmotort használja. Nagyon bonyolult nagy weboldalak létrehozása Flask. A legtöbb funkció, mint például az URL-útválasztás, a kérések küldése, a biztonságos cookie-k, a munkamenetek stb., megtalálható a Django-ban és a Flask-ban is.

Válassza ki a keretrendszert webhelye összetettsége alapján. A Django egyre népszerűbb a fejlesztők körében. Ez a Python webfejlesztés leggyakrabban használt keretrendszere.

Következtetés

Remélem, megismerte a Python különböző moduljait, könyvtárait és keretrendszereit.

Mindenki egyszer kezdő.

Bármit is szeretne kezdeni, először nyissa meg a dokumentációt, és kezdje el megtanulni. Ha nem érti a dokumentumokat, keressen gyorstanfolyamokat a webhelyen oktatási weboldalak.