11 Pythonových knihoven a modulů, které by měl znát každý vývojář

Knihovny a moduly usnadňují život programátora.

Při práci na projektech se můžete setkat se scénáři, kdy nebudete schopni vyřešit problém se standardním kódováním programovacího jazyka. K překonání těchto problémů potřebujeme nějaké knihovny a moduly.

Naštěstí Python podporuje nepřeberné množství modulů a knihoven. Python má vestavěné moduly a také knihovny a moduly třetích stran pro vývoj. Uvidíme jak integrované moduly, tak moduly třetích stran, které jsou pro Python projekty velmi přínosné. Nejprve prozkoumáme vestavěné moduly.

# Vestavěné moduly

Python přichází se spoustou vestavěných modulů pro různé případy použití. Moduly budeme studovat jeden po druhém podle použití.

Kolekce – datové typy kontejnerů

Python má různé typy kolekcí pro uložení kolekce dat. Například n-tice, list, dict atd. jsou některé z vestavěných kolekcí Pythonu. Modul sbírky poskytuje další funkce k vestavěným sbírkám.

Pokud vezmete shromažďování dat deque z modulu kolekcí, je to spíše jako seznam Python. Ale můžeme zatlačit a vyskočit prvky z obou stran. Je to rychlejší než seznam. Deque můžete použít podle svých potřeb. Podívejme se na skutečné kódování s kolekcí dat collections.deque.

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)

Spusťte výše uvedený kód; viz výsledky. V modulu kolekcí máme i další kolekce dat.

Někteří z nich jsou:

Čelit
Vrátí diktát, který obsahuje četnost prvků ze seznamu.

Je to podtřída třídy dict.

Seznam uživatelů
Používá se pro rychlou podtřídu seznamu.
UserDict
Používá se pro rychlou podtřídu dict.
UserString
Používá se pro rychlou podtřídu str.

Přejděte do dokumentace k sbírky modul k prozkoumání všech sběrů dat a metod.

Rychlá poznámka: Použijte vestavěnou metodu dir(object) Pythonu k zobrazení všech metod objektu.

CSV – zpracování souborů

K uložení tabulkových dat můžeme použít soubory CSV (hodnoty oddělené čárkami). Nejčastěji používaný formát pro import a export dat z tabulek a databází. Python přichází s modulem nazvaným CSV pro zpracování souborů CSV.

  CamFind přináší do Androidu úžasné vyhledávání a rozpoznávání obrázků

Podívejme se na jeden příklad čtení dat ze souboru CSV.

Vytvořte ve svém notebooku soubor s názvem sample.csv a vložte následující data.

Name,Age,Graduation Year

Hafeez,21,2021

Aslan,23,2019

Rambabu,21,2021

Máme metody pro čtení a zápis v modulu CSV. Ukážeme si, jak číst data ze souborů CSV pomocí modulu CSV.

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

Spusťte výše uvedený kód a zobrazte výsledky.

Budeme mít také objekt nazvaný csv.writer() pro zápis dat do souboru CSV. Hrajte si s ostatními metodami sami pomocí vestavěných metod dir() a help(). Máme další modul s názvem JSON, který se používá pro práci se soubory JSON. Je to také vestavěný modul.

Náhodné – generace

Python má modul nazvaný random, který umožňuje generovat data náhodně. Můžeme vyrobit cokoliv náhodně pomocí různých způsobů náhodného modulu. Tento modul můžete použít v aplikacích jako tic-tac-toe, hra v kostky atd..,

Podívejme se na jednoduchý program pro generování náhodných celých čísel z daného rozsahu.

import random

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

Ostatní metody náhodného modulu zkontrolujete pomocí metod dir() a help(). Pojďme napsat malou a jednoduchou hru pomocí náhodného modulu. Můžeme tomu říkat hra na hádání čísel.

Co je hra na hádání čísel?

Program vygeneruje náhodné číslo v rozsahu 1 – 100. Uživatel bude číslo hádat, dokud se nebude shodovat s náhodným číslem vygenerovaným programem. Pokaždé vytisknete, zda je číslo uživatele menší než náhodné číslo nebo vyšší než náhodné číslo. Poté se ve zdrojovém kódu zobrazí počet tipů.

Viz níže uvedený kód pro výše uvedený program.

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

Tkinter je vestavěný modul pro vývoj aplikací GUI (Graphical User Interface). Je vhodný pro začátečníky. Můžeme vyvíjet GUI aplikace, jako je kalkulačka, přihlašovací systém, textový editor atd.. Existuje mnoho zdrojů, jak se naučit vývoj GUI pomocí Tkinter.

  9 nejlepších aplikací pro vyhledávání telefonních čísel podvodníků

Nejlepší podporou je následovat úředníka dokumenty. Chcete-li začít s Tkinterem, přejděte do dokumentace a začněte vytvářet krásné GUI aplikace.

# Moduly třetích stran

Požadavky – HTTP požadavky

Modul Requests slouží k odesílání všech druhů HTTP požadavků na server. Umožňuje odesílat požadavky HTTP/1.1. Můžeme také přidat záhlaví, data a další věci pomocí slovníků Pythonu. Jelikož se jedná o modul třetí strany, musíme jej nainstalovat. Spuštěním následujícího příkazu v terminálu nebo na příkazovém řádku nainstalujte modul požadavků.

pip install requests

Práce s modulem požadavků je jednoduchá. S požadavky můžeme začít pracovat bez jakýchkoliv předchozích znalostí. Podívejme se, jak odeslat žádost o získání a co vrátí.

import requests

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

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

Výše uvedený kód vytiskne status_code, URL a metodu požadavku (GET, POST). Získáte také zdroj adresy URL. Můžete k němu přistupovat pomocí bajtů request.content. Přejít na dokumenty modulu požadavků a prozkoumejte více.

BeautifulSoup4 – škrábání webu

Knihovna BeautifulSoup se používá pro stírání webu. Je to šikovný modul pro práci. Dokonce i začátečníci s ním mohou začít pracovat pomocí dokumenty. Podívejte se na ukázkový kód a zrušte podrobnosti zákaznických hlášení.

BeautifulSoup můžete nainstalovat zadáním následujícího příkazu do terminálu/příkazového řádku.

pip install beautifulsoup4

A jednoduchý program pro vaše první škrábání.

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

Spusťte výše uvedený kód a uvidíte kouzlo škrábání webu. Existuje více rámců pro stírání webu, které můžete vyzkoušet.

# Datová věda a strojové učení

Existuje několik knihoven speciálně vytvořených pro datovou vědu a strojové učení. Všechny jsou vyvinuty v C. Jsou bleskurychlé.

Numpy

Numpy se používá pro vědecké výpočty.

  Jak změnit členství v klubu My Sam

Umožňuje nám pracovat s vícerozměrnými poli. Implementace polí v Pythonu není. Především vývojáři používají numpy ve svých projektech strojového učení. Je to snadné se naučit a knihovna s otevřeným zdrojovým kódem. Téměř každý inženýr strojového učení nebo datový vědec používá tento modul pro složité matematické výpočty.

Spuštěním následujícího příkazu nainstalujte numpy modul.

pip install numpy

pandy

pandy je modul pro analýzu dat. Data můžeme nejefektivněji filtrovat pomocí knihovny pandas. Nabízí různé typy datových struktur, které se hodí pro práci. Poskytuje také práci se soubory s různými formáty souborů.

Nainstalujte modul pomocí následujícího příkazu.

pip install pandas

Matplotlib

Matplotlib je knihovna pro vykreslování 2D grafů. Data můžete vizualizovat pomocí Matplotlib.

Můžeme generovat obrázky postav v různých formátech. Vykreslujeme různé typy diagramů, jako jsou sloupcové grafy, chybové grafy, histogramy, bodové grafy atd.. Matplotlib můžete nainstalovat pomocí následujícího příkazu.

pip install matplotlib

Rychlá poznámka: – Můžete nainstalovat Anakonda získat všechny knihovny a moduly potřebné pro Data Science.

Pokud to s učením Pythonu pro datovou vědu a ML myslíte vážně, podívejte se na toto skvělé Kurz Udemy.

# Webové rámce

V Pythonu najdeme mnoho webových frameworků. Probereme dva rámce, které vývojáři široce používají. Tyto dva rámce jsou Django a Flask.

Django

Django je open-source webový framework vyvinutý v Pythonu. S Django je pohodlné vytvářet webové stránky. Pomocí tohoto rámce můžeme generovat jakékoli druhy stránek. Některé z nejpopulárnějších stránek vytvořených pomocí Django jsou Instagram, bitbucket, Disqus, Mozilla Firefox atd.,

  • S funkcemi Django dokážeme rychle vytvořit složité webové stránky.
  • Django již dělá spoustu úkolů potřebných pro vývoj webu.
  • Poskytuje také zabezpečení pro útoky SQL Injection, cross-site scripting, cross-site request forgering a clickjacking.
  • Dokážeme postavit jakýkoli web od redakčního systému až po sociální stránky.

Dokumentace Djanga je jednoznačná. Musíte se seznámit s Pythonem pro Django. Ale nebojte se, pokud nejste. Učíme se Django je lehké.

Baňka

Flask je mikro webový framework vyvinutý v Pythonu.

Je více pythonic než Django. Má vynikající dokumentaci tady. Využívá šablonový engine Jinja. Je velmi složité vytvořit velké webové stránky Flask. Většina funkcí, jako je směrování URL, odesílání požadavků, zabezpečené soubory cookie, relace atd., je přítomna v Django i Flask.

Vyberte si rámec na základě složitosti vašeho webu. Django si získává oblibu mezi vývojáři. Je to nejpoužívanější framework pro vývoj webu v Pythonu.

Závěr

Doufám, že jste se dozvěděli o různých modulech, knihovnách a rámcích pro Python.

Každý jednou začátečník.

Ať už chcete začít s čímkoli, nejprve si projděte dokumentaci a začněte se to učit. Pokud nerozumíte dokumentům, najděte rychlé kurzy na webu vzdělávací weby.