11 bibliotek i modułów Pythona, które powinien znać każdy programista

Biblioteki i moduły ułatwiają życie programisty.

Podczas pracy z projektami możesz napotkać scenariusze, których nie będziesz w stanie rozwiązać przy użyciu standardowego kodowania języka programowania. Potrzebujemy bibliotek i modułów, aby przezwyciężyć te problemy.

Na szczęście Python obsługuje mnóstwo modułów i bibliotek. Python ma wbudowane moduły, a także biblioteki i moduły innych firm do programowania. Zobaczymy zarówno moduły zintegrowane, jak i moduły firm trzecich, które są bardzo korzystne dla projektów Pythona. Przyjrzyjmy się najpierw wbudowanym modułom.

# Wbudowane moduły

Python ma wiele wbudowanych modułów do różnych zastosowań. Przestudiujemy moduły jeden po drugim zgodnie z zastosowaniem.

Kolekcje — typy danych kontenera

Python ma różne rodzaje kolekcji do przechowywania kolekcji danych. Na przykład krotka, lista, dyktat itp. to tylko niektóre z wbudowanych kolekcji Pythona. Moduł kolekcji zapewnia dodatkowe funkcje wbudowanych kolekcji.

Jeśli weźmiesz zbieranie danych deque z modułu collections, będzie to bardziej przypominało listę Pythona. Ale możemy popchnąć i popchnąć elementy z obu stron. Jest szybszy niż lista. Możesz użyć deque w zależności od potrzeb. Zobaczmy trochę prawdziwego kodowania z kolekcją danych 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)

Uruchom powyższy kod; zobacz wyniki. Mamy również inne kolekcje danych w module kolekcje.

Niektórzy z nich są:

Licznik
Zwraca dict, który zawiera częstotliwość elementów z listy.

Jest to podklasa klasy dict.

Lista użytkowników
Używane do szybkiej podklasy listy.
UserDict
Używane dla szybkiej podklasy dict.
Ciąg użytkownika
Używane dla szybkiej podklasy str.

Przejdź do dokumentacji programu kolekcje moduł do eksploracji wszystkich zbiorów danych i metod.

Szybka uwaga: – Użyj wbudowanej metody dir(object) Pythona, aby zobaczyć wszystkie metody obiektu.

CSV – obsługa plików

Możemy użyć plików CSV (wartości oddzielone przecinkami) do przechowywania danych tabelarycznych. Najczęściej używany format do importowania i eksportowania danych z arkuszy kalkulacyjnych i baz danych. Python jest dostarczany z modułem o nazwie CSV do obsługi plików CSV.

Zobaczmy jeden przykład odczytu danych z pliku CSV.

Utwórz plik o nazwie sample.csv w swoim laptopie i wklej następujące dane.

Name,Age,Graduation Year

Hafeez,21,2021

Aslan,23,2019

Rambabu,21,2021

Mamy metody do odczytu i zapisu w module CSV. Zobaczymy jak odczytać dane z plików CSV za pomocą modułu 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))

Uruchom powyższy kod, aby zobaczyć wyniki.

Będziemy mieć również obiekt o nazwie csv.writer() do zapisywania danych w pliku CSV. Samodzielnie poeksperymentuj z innymi metodami, korzystając z wbudowanych metod dir() i help(). Mamy jeszcze jeden moduł o nazwie JSON, który służy do obsługi plików JSON. Jest to również wbudowany moduł.

Losowo – generacja

Python posiada moduł o nazwie random, który umożliwia losowe generowanie danych. Możemy wyprodukować wszystko losowo, korzystając z różnych sposobów modułu losowego. Możesz użyć tego modułu w aplikacjach takich jak kółko i krzyżyk, gra w kości itp.,

Zobaczmy prosty program do generowania losowych liczb całkowitych z podanego przedziału.

import random

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

Sprawdzasz inne metody losowego modułu za pomocą metod dir() i help(). Napiszmy małą i prostą grę, używając modułu losowego. Możemy to nazwać grą w zgadywanie liczb.

Czym jest gra w zgadywanie liczb?

Program wygeneruje losową liczbę z zakresu 1 – 100. Użytkownik będzie odgadywał liczbę tak długo, aż będzie ona zgodna z liczbą losową wygenerowaną przez program. Za każdym razem wydrukujesz czy numer użytkownika jest mniejszy od losowej liczby czy wyższy od losowej liczby. Następnie kod źródłowy wyświetli liczbę zgadnięć.

Zobacz poniższy kod dla powyższego programu.

# 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 – aplikacje GUI

Tkinter to wbudowany moduł do tworzenia aplikacji GUI (Graphical User Interface). Jest wygodny dla początkujących. Możemy tworzyć aplikacje GUI, takie jak kalkulator, system logowania, edytor tekstu itp. Istnieje wiele zasobów do nauki programowania GUI za pomocą Tkintera.

Najlepszym wsparciem jest podążanie za urzędnikiem dokumenty. Aby rozpocząć pracę z Tkinterem, przejdź do dokumentacji i zacznij tworzyć piękne aplikacje GUI.

# Moduły stron trzecich

Żądania – żądania HTTP

Moduł Requests służy do wysyłania wszelkiego rodzaju żądań HTTP do serwera. Umożliwia wysyłanie żądań HTTP/1.1. Możemy również dodawać nagłówki, dane i inne rzeczy za pomocą słowników Pythona. Ponieważ jest to moduł innej firmy, musimy go zainstalować. Uruchom następujące polecenie w terminalu lub wierszu polecenia, aby zainstalować moduł żądań.

pip install requests

Praca z modułem request jest prosta. Możemy rozpocząć pracę z żądaniami bez wcześniejszej wiedzy. Zobaczmy, jak wysłać żądanie get i co zwraca.

import requests

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

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

Powyższy kod wypisze status_code, adres URL i metodę żądania (GET, POST). Otrzymasz również źródło adresu URL. Możesz uzyskać do niego dostęp za pomocą bajtów request.content. Idź do dokumenty modułu wniosków i odkryj więcej.

BeautifulSoup4 – skrobanie sieci

Biblioteka BeautifulSoup służy do skrobania stron internetowych. Jest to przydatny moduł do pracy. Nawet początkujący mogą rozpocząć pracę z nim za pomocą dokumenty. Zobacz przykładowy kod, aby usunąć szczegóły raportów klientów.

Możesz zainstalować BeautifulSoup, wpisując następujące polecenie w terminalu/linii poleceń.

pip install beautifulsoup4

I prosty program do pierwszego skrobania.

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

Uruchom powyższy kod, aby zobaczyć magię web scrapingu. Istnieje więcej platform do skrobania stron internetowych, które możesz wypróbować.

# Nauka o danych i uczenie maszynowe

Istnieje kilka bibliotek stworzonych specjalnie do nauki o danych i uczenia maszynowego. Wszystko to jest rozwijane w C. Są błyskawiczne.

Numpy

Numpy służy do obliczeń naukowych.

Pozwala nam pracować na tablicach wielowymiarowych. W Pythonie nie ma implementacji tablic. Głównie programiści używają numpy w swoich projektach uczenia maszynowego. Łatwa do nauczenia się i otwarta biblioteka. Prawie każdy inżynier uczący się maszyn lub analityk danych używa tego modułu do złożonych obliczeń matematycznych.

Uruchom następujące polecenie, aby zainstalować moduł numpy.

pip install numpy

Pandy

Pandy jest modułem analizy danych. Najefektywniej możemy filtrować dane za pomocą biblioteki pandas. Oferuje różne typy struktur danych, które są przydatne w pracy. Zapewnia również obsługę plików w różnych formatach plików.

Zainstaluj moduł za pomocą następującego polecenia.

pip install pandas

Matplotlib

Matplotlib jest biblioteką do kreślenia wykresów 2D. Możesz wizualizować dane za pomocą Matplotlib.

Możemy generować obrazy postaci w różnych formatach. Wykreślamy różne typy diagramów, takie jak wykresy słupkowe, wykresy błędów, histogramy, wykresy rozrzutu itp. Możesz zainstalować matplotlib za pomocą następującego polecenia.

pip install matplotlib

Szybka uwaga: – Możesz zainstalować Anakonda aby uzyskać wszystkie biblioteki i moduły wymagane do Data Science.

Jeśli poważnie myślisz o nauce Pythona do nauki o danych i ML, sprawdź to genialne Kurs Udemy.

# Frameworki internetowe

W Pythonie możemy znaleźć wiele frameworków internetowych. Omówimy dwa frameworki, które są szeroko stosowane przez programistów. Dwa frameworki to Django i Flask.

Django

Django to framework sieciowy typu open source opracowany w języku Python. Tworzenie stron internetowych za pomocą Django jest wygodne. Za pomocą tego frameworka możemy generować wszelkiego rodzaju witryny. Niektóre z najpopularniejszych witryn zbudowanych z Django to Instagram, bitbucket, Disqus, Mozilla Firefox itp.,

  • Dzięki funkcjom Django możemy szybko budować złożone strony internetowe.
  • Django wykonuje już wiele zadań wymaganych do tworzenia stron internetowych.
  • Zapewnia również ochronę przed atakami SQL Injection, cross-site scripting, cross-site request forgery i clickjacking.
  • Zbudujemy każdą stronę od systemu zarządzania treścią po serwisy społecznościowe.

Dokumentacja Django jest jednoznaczna. Musisz znać Pythona dla Django. Ale nie martw się, jeśli nie jesteś. Nauka Django jest proste.

Kolba

Flask to mikro framework sieciowy opracowany w Pythonie.

Jest bardziej Pythoniczny niż Django. Posiada doskonałą dokumentację tutaj. Wykorzystuje silnik szablonów Jinja. Tworzenie dużych stron internetowych Flask jest bardzo skomplikowane. Większość funkcji, takich jak routing adresów URL, wysyłanie żądań, bezpieczne pliki cookie, sesje itp., jest obecna zarówno w Django, jak i we Flask.

Wybierz platformę w oparciu o złożoność swojej witryny. Django zyskuje popularność wśród programistów. Jest to najczęściej używany framework do tworzenia stron internetowych w Pythonie.

Wniosek

Mam nadzieję, że poznałeś różne moduły, biblioteki i frameworki dla Pythona.

Każdy kiedyś początkujący.

Cokolwiek chcesz zacząć, najpierw przejdź do dokumentacji i zacznij się jej uczyć. Jeśli nie możesz zrozumieć dokumentów, znajdź szybkie kursy na stronie edukacyjne strony internetowe.