Bibliotēkas un moduļi padara programmētāja dzīvi gludu.
Strādājot ar projektiem, jūs varat saskarties ar scenārijiem, kurus nevarēsit atrisināt ar programmēšanas valodas standarta kodēšanu. Mums ir vajadzīgas dažas bibliotēkas un moduļi, lai pārvarētu šīs problēmas.
Par laimi Python atbalsta virkni moduļu un bibliotēku. Python ir iebūvēti moduļi, kā arī trešo pušu bibliotēkas un moduļi izstrādei. Mēs redzēsim gan integrētus, gan trešo pušu moduļus, kas ir ļoti izdevīgi Python projektiem. Vispirms izpētīsim iebūvētos moduļus.
# Iebūvētie moduļi
Python ir aprīkots ar daudziem iebūvētiem moduļiem dažādiem lietošanas gadījumiem. Mēs izpētīsim moduļus pa vienam atbilstoši pielietojumam.
Kolekcijas — konteineru datu tipi
Python ir dažāda veida kolekcijas, lai saglabātu datu kolekciju. Piemēram, tuple, list, dict utt., ir dažas no Python iebūvētajām kolekcijām. Kolekciju modulis nodrošina papildu funkcijas iebūvētajām kolekcijām.
Ja ņemat deque datu vākšanu no kolekciju moduļa, tas vairāk atgādina Python sarakstu. Bet mēs varam stumt un izspiest elementus no abām pusēm. Tas ir ātrāk nekā sarakstā. Jūs varat izmantot deku, pamatojoties uz savām vajadzībām. Apskatīsim reālu kodēšanu ar collections.deque datu vākšanu.
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)
Palaidiet iepriekš minēto kodu; redzēt rezultātus. Kolekciju modulī mums ir arī citas datu kolekcijas.
Daži no tiem ir:
Skaitītājs
Atgriež diktātu, kas satur saraksta elementu biežumu.
Tā ir diktātu klases apakšklase.
Lietotāju saraksts
Izmanto ātrai saraksta apakšklasei.
UserDict
Izmanto ātrai diktāta apakšklasei.
UserString
Izmanto ātrai str. apakšklasei.
Dodieties uz dokumentāciju kolekcijas modulis, lai izpētītu visas datu kolekcijas un metodes.
Ātra piezīme: izmantojiet Python iebūvēto metodi dir(object), lai redzētu visas objekta metodes.
CSV — failu apstrāde
Mēs varam izmantot CSV (komatatdalīto vērtību) failus, lai saglabātu tabulas datus. Visbiežāk izmantotais formāts datu importēšanai un eksportēšanai no izklājlapām un datu bāzēm. Python ir aprīkots ar moduli, ko sauc par CSV, lai apstrādātu CSV failus.
Apskatīsim vienu piemēru datu nolasīšanai no CSV faila.
Savā klēpjdatorā izveidojiet failu ar nosaukumu sample.csv un ielīmējiet tālāk norādītos datus.
Name,Age,Graduation Year Hafeez,21,2021 Aslan,23,2019 Rambabu,21,2021
Mums ir metodes, kā lasīt un rakstīt CSV modulī. Mēs redzēsim, kā nolasīt datus no CSV failiem, izmantojot CSV moduli.
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))
Palaidiet iepriekš minēto kodu, lai redzētu rezultātus.
Mums būs arī objekts csv.writer(), lai ierakstītu datus CSV failā. Spēlējiet ar citām metodēm patstāvīgi, izmantojot iebūvētās metodes dir() un help(). Mums ir vēl viens modulis ar nosaukumu JSON, kas tiek izmantots JSON failu apstrādei. Tas ir arī iebūvēts modulis.
Nejauši – paaudze
Python ir modulis, ko sauc par nejaušību, kas ļauj ģenerēt datus nejauši. Mēs varam radīt jebko nejauši, izmantojot dažādus nejaušā moduļa veidus. Varat izmantot šo moduli tādās lietojumprogrammās kā tic-tac-toe, kauliņu spēle utt.,
Apskatīsim vienkāršu programmu, lai ģenerētu nejaušus veselus skaitļus no noteiktā diapazona.
import random # generating a random number from the range 1-100 print(random.randint(1, 100))
Pārējās izlases moduļa metodes pārbaudiet, izmantojot dir() un help() metodes. Uzrakstīsim nelielu un vienkāršu spēli, izmantojot izlases moduli. Mēs to varam saukt par skaitļu minēšanas spēli.
Kas ir skaitļu minēšanas spēle?
Programma ģenerēs nejaušu skaitli diapazonā no 1 līdz 100. Lietotājs uzminēs skaitli, līdz tas sakritīs ar programmas ģenerēto nejaušo skaitli. Katru reizi drukāsiet, vai lietotāja numurs ir mazāks par nejaušo skaitli vai lielāks par nejaušo skaitli. Pēc tam avota kods parādīs minējumu skaitu.
Skatiet tālāk minētās programmas kodu.
# 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 lietojumprogrammas
Tkinter ir iebūvēts modulis GUI (grafiskā lietotāja interfeisa) lietojumprogrammu izstrādei. Tas ir ērti iesācējiem. Mēs varam izstrādāt GUI lietojumprogrammas, piemēram, kalkulatoru, pieteikšanās sistēmu, teksta redaktoru utt.. Ir daudz resursu, lai apgūtu GUI izstrādi ar Tkinter.
Labākais atbalsts ir sekot ierēdnim dok. Lai sāktu darbu ar Tkinter, atveriet dokumentus un sāciet veidot skaistas GUI lietojumprogrammas.
# Trešās puses moduļi
Pieprasījumi – HTTP pieprasījumi
Pieprasījumu modulis tiek izmantots visu veidu HTTP pieprasījumu sūtīšanai uz serveri. Tas ļauj nosūtīt HTTP/1.1 pieprasījumus. Mēs varam arī pievienot galvenes, datus un citas lietas, izmantojot Python vārdnīcas. Tā kā tas ir trešās puses modulis, mums tas ir jāinstalē. Lai instalētu pieprasījumu moduli, terminālī vai komandrindā palaidiet šo komandu.
pip install requests
Darbs ar pieprasījumu moduli ir vienkāršs. Varam sākt strādāt ar pieprasījumiem bez priekšzināšanām. Apskatīsim, kā nosūtīt saņemšanas pieprasījumu un ko tas atgriež.
import requests # sening a get request request = requests.get("https://www.google.com/") # print(request.status_code) print(request.url) print(request.request)
Iepriekš minētais kods izdrukā statusa_kodu, URL un pieprasījuma metodi (GET, POST). Jūs saņemsiet arī URL avotu. Tam var piekļūt, izmantojot request.content baitus. Dodieties uz dok pieprasījumu moduli un izpētiet vairāk.
BeautifulSoup4 — tīmekļa skrāpēšana
BeautifulSoup bibliotēka tiek izmantota tīmekļa skrāpēšanai. Tas ir ērts modulis darbam. Pat iesācēji var sākt ar to strādāt, izmantojot dok. Skatiet koda paraugu, lai noņemtu informāciju par klientu ziņojumiem.
Jūs varat instalēt BeautifulSoup, terminālī/komandrindā ierakstot šādu komandu.
pip install beautifulsoup4
Un vienkārša programma jūsu pirmajai skrāpēšanai.
## 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)
Palaidiet iepriekš norādīto kodu, lai redzētu tīmekļa skrāpēšanas burvību. Ir pieejamas arī citas tīmekļa kopēšanas sistēmas, kuras varat izmēģināt.
# Datu zinātne un mašīnmācīšanās
Ir dažas bibliotēkas, kas īpaši izveidotas datu zinātnei un mašīnmācībai. Tie visi ir izstrādāti C. Tie ir zibenīgi.
Neskaidrs
Neskaidrs tiek izmantots zinātniskiem aprēķiniem.
Tas ļauj mums strādāt ar daudzdimensiju masīviem. Python masīvu ieviešana nav pieejama. Galvenokārt izstrādātāji savos mašīnmācības projektos izmanto numpy. Tā ir viegli apgūstama un atvērtā koda bibliotēka. Gandrīz katrs mašīnmācības inženieris vai datu zinātnieks izmanto šo moduli sarežģītiem matemātiskiem aprēķiniem.
Palaidiet šo komandu, lai instalētu numpy moduli.
pip install numpy
Pandas
Pandas ir datu analīzes modulis. Mēs varam visefektīvāk filtrēt datus, izmantojot pandas bibliotēku. Tas piedāvā dažāda veida datu struktūras, kas ir parocīgas darbam. Tas arī nodrošina failu apstrādi ar dažādiem failu formātiem.
Instalējiet moduli, izmantojot šādu komandu.
pip install pandas
Matplotlib
Matplotlib ir 2D grafiku zīmēšanas bibliotēka. Varat vizualizēt datus, izmantojot Matplotlib.
Mēs varam ģenerēt figūru attēlus dažādos formātos. Mēs veidojam dažāda veida diagrammas, piemēram, joslu diagrammas, kļūdu diagrammas, histogrammas, izkliedes diagrammas utt.. Varat instalēt matplotlib, izmantojot šo komandu.
pip install matplotlib
Ātra piezīme: – varat instalēt Anakonda lai iegūtu visas datu zinātnei nepieciešamās bibliotēkas un moduļus.
Ja jūs nopietni domājat apgūt Python datu zinātnei un ML, pārbaudiet šo izcilo Udemy kurss.
# Web Frameworks
Python mēs varam atrast daudz tīmekļa ietvaru. Mēs apspriedīsim divus ietvarus, kurus izstrādātāji plaši izmanto. Abas sistēmas ir Django un Flask.
Django
Django ir atvērtā koda tīmekļa ietvars, kas izstrādāts Python. Ar Django ir ērti izveidot vietnes. Izmantojot šo sistēmu, mēs varam ģenerēt jebkura veida vietnes. Dažas no populārākajām vietnēm, kas veidotas, izmantojot Django, ir Instagram, bitbucket, Disqus, Mozilla Firefox utt.,
- Mēs varam ātri izveidot sarežģītas vietnes, izmantojot Django funkcijas.
- Django jau veic daudzus tīmekļa izstrādei nepieciešamos uzdevumus.
- Tas nodrošina arī drošību uzbrukumiem SQL injekcijai, starpvietņu skriptēšanai, starpvietņu pieprasījumu viltošanai un klikšķu uzlaupīšanai.
- Mēs varam izveidot jebkuru vietni no satura pārvaldības sistēmas līdz sociālajām vietnēm.
Django dokumentācija ir nepārprotama. Jums ir jāzina Python for Django. Bet neuztraucieties, ja neesat. Mācāmies Django ir viegli.
Kolba
Flask ir mikro tīmekļa ietvars, kas izstrādāts Python.
Tas ir pitoniskāks nekā Django. Tam ir lieliska dokumentācija šeit. Tas izmanto Jinja veidņu dzinēju. Ir ļoti sarežģīti izveidot lielas tīmekļa vietnes Flask. Lielākā daļa funkciju, piemēram, URL maršrutēšana, pieprasījumu nosūtīšana, droši sīkfaili, sesijas utt., ir pieejami gan Django, gan Flask.
Izvēlieties sistēmu, pamatojoties uz jūsu vietnes sarežģītību. Django gūst popularitāti izstrādātāju vidū. Tas ir Python tīmekļa izstrādei visbiežāk izmantotais ietvars.
Secinājums
Es ceru, ka jūs uzzinājāt par dažādiem Python moduļiem, bibliotēkām un ietvariem.
Katrs kādreiz ir iesācējs.
Neatkarīgi no tā, ko vēlaties sākt, vispirms iepazīstieties ar dokumentāciju un sāciet to apgūt. Ja nevarat saprast dokumentus, atrodiet avārijas kursus vietnē izglītības tīmekļa vietnes.