Οι βιβλιοθήκες και οι μονάδες κάνουν τη ζωή ενός προγραμματιστή ομαλή.
Όταν εργάζεστε με έργα, μπορεί να αντιμετωπίσετε σενάρια όπου δεν θα μπορείτε να επιλύσετε με την τυπική κωδικοποίηση μιας γλώσσας προγραμματισμού. Χρειαζόμαστε κάποιες βιβλιοθήκες και ενότητες για να ξεπεράσουμε αυτά τα προβλήματα.
Ευτυχώς η Python υποστηρίζει μια πληθώρα λειτουργικών μονάδων και βιβλιοθηκών. Η Python διαθέτει ενσωματωμένες μονάδες καθώς και βιβλιοθήκες και λειτουργικές μονάδες τρίτων για την ανάπτυξη. Θα δούμε τόσο ενσωματωμένες όσο και τρίτες ενότητες, οι οποίες είναι πολύ ωφέλιμες για έργα Python. Ας εξερευνήσουμε πρώτα τις ενσωματωμένες μονάδες.
Πίνακας περιεχομένων
# Ενσωματωμένες μονάδες
Η Python συνοδεύεται από πολλές ενσωματωμένες μονάδες για διαφορετικές περιπτώσεις χρήσης. Θα μελετήσουμε τις ενότητες μία προς μία ανάλογα με τη χρήση.
Συλλογές – Τύποι δεδομένων κοντέινερ
Η Python έχει διαφορετικούς τύπους συλλογών για την αποθήκευση της συλλογής δεδομένων. Για παράδειγμα, πλειάδα, λίστα, dict, κ.λπ., είναι μερικές από τις ενσωματωμένες συλλογές της Python. Η ενότητα συλλογών παρέχει πρόσθετες δυνατότητες στις ενσωματωμένες συλλογές.
Εάν λάβετε τη συλλογή δεδομένων deque από τη λειτουργική μονάδα συλλογών, μοιάζει περισσότερο με μια λίστα Python. Όμως, μπορούμε να σπρώξουμε και να σκάσουμε τα στοιχεία και από τις δύο πλευρές. Είναι πιο γρήγορο από τη λίστα. Μπορείτε να χρησιμοποιήσετε το deque με βάση τις ανάγκες σας. Ας δούμε κάποια πραγματική κωδικοποίηση με συλλογή δεδομένων 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)
Εκτελέστε τον παραπάνω κώδικα. δείτε τα αποτελέσματα. Έχουμε και άλλες συλλογές δεδομένων στη μονάδα συλλογών.
Κάποιοι από αυτούς είναι:
Μετρητής
Επιστρέφει μια εντολή που περιέχει τη συχνότητα των στοιχείων από τη λίστα.
Είναι μια υποκατηγορία της κατηγορίας dict.
Λίστα χρηστών
Χρησιμοποιείται για μια γρήγορη υποκατηγορία της λίστας.
UserDict
Χρησιμοποιείται για μια γρήγορη υποκατηγορία του dict.
UserString
Χρησιμοποιείται για μια γρήγορη υποκατηγορία του str.
Μεταβείτε στην τεκμηρίωση του συλλογές μονάδα για να εξερευνήσετε όλες τις συλλογές δεδομένων και τις μεθόδους.
Γρήγορη σημείωση:- Χρησιμοποιήστε την ενσωματωμένη μέθοδο dir(object) της Python για να δείτε όλες τις μεθόδους ενός αντικειμένου.
CSV – Χειρισμός αρχείων
Μπορούμε να χρησιμοποιήσουμε τα αρχεία CSV (τιμές διαχωρισμένες με κόμμα) για να αποθηκεύσουμε τα δεδομένα του πίνακα. Η πιο συχνά χρησιμοποιούμενη μορφή για εισαγωγή και εξαγωγή δεδομένων από υπολογιστικά φύλλα και βάσεις δεδομένων. Η Python συνοδεύεται από μια λειτουργική μονάδα που ονομάζεται CSV για τη διαχείριση των αρχείων CSV.
Ας δούμε ένα παράδειγμα ανάγνωσης των δεδομένων από ένα αρχείο CSV.
Δημιουργήστε ένα αρχείο με το όνομα sample.csv στον φορητό υπολογιστή σας και επικολλήστε τα παρακάτω δεδομένα.
Name,Age,Graduation Year Hafeez,21,2021 Aslan,23,2019 Rambabu,21,2021
Έχουμε μεθόδους ανάγνωσης και εγγραφής στη μονάδα CSV. Θα δούμε πώς να διαβάζουμε τα δεδομένα από τα αρχεία CSV χρησιμοποιώντας τη μονάδα 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))
Εκτελέστε τον παραπάνω κώδικα για να δείτε τα αποτελέσματα.
Θα έχουμε επίσης ένα αντικείμενο που ονομάζεται csv.writer() για να γράψουμε τα δεδομένα στο αρχείο CSV. Παίξτε με τις άλλες μεθόδους μόνοι σας χρησιμοποιώντας τις ενσωματωμένες μεθόδους dir() και help(). Έχουμε μια άλλη μονάδα που ονομάζεται JSON, η οποία χρησιμοποιείται για το χειρισμό των αρχείων JSON. Είναι επίσης μια ενσωματωμένη μονάδα.
Τυχαία – γενιά
Η Python έχει μια λειτουργική μονάδα που ονομάζεται random που επιτρέπει τη δημιουργία των δεδομένων τυχαία. Μπορούμε να παράγουμε οτιδήποτε τυχαία χρησιμοποιώντας διαφορετικούς τρόπους της τυχαίας ενότητας. Μπορείτε να χρησιμοποιήσετε αυτήν την ενότητα σε εφαρμογές όπως το tic-tac-toe, ένα παιχνίδι με ζάρια κ.λπ.,
Ας δούμε ένα απλό πρόγραμμα για τη δημιουργία τυχαίων ακεραίων από μια δεδομένη περιοχή.
import random # generating a random number from the range 1-100 print(random.randint(1, 100))
Μπορείτε να ελέγξετε τις άλλες μεθόδους της τυχαίας λειτουργικής μονάδας χρησιμοποιώντας τις μεθόδους dir() και help(). Ας γράψουμε ένα μικρό και απλό παιχνίδι χρησιμοποιώντας την τυχαία ενότητα. Μπορούμε να το ονομάσουμε παιχνίδι μαντείας αριθμών.
Τι είναι το παιχνίδι εικασίας αριθμών;
Το πρόγραμμα θα δημιουργήσει έναν τυχαίο αριθμό στην περιοχή από 1 – 100. Ο χρήστης θα μαντέψει τον αριθμό μέχρι να ταιριάζει με τον τυχαίο αριθμό που δημιουργείται από το πρόγραμμα. Κάθε φορά που θα εκτυπώνετε εάν ο αριθμός χρήστη είναι μικρότερος από τον τυχαίο αριθμό ή μεγαλύτερος από τον τυχαίο αριθμό. Στη συνέχεια, ο πηγαίος κώδικας θα εμφανίσει τον αριθμό των εικασιών.
Δείτε τον παρακάτω κώδικα για το παραπάνω πρόγραμμα.
# 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
Το Tkinter είναι μια ενσωματωμένη μονάδα για την ανάπτυξη εφαρμογών GUI (Graphical User Interface). Είναι βολικό για αρχάριους. Μπορούμε να αναπτύξουμε εφαρμογές GUI όπως αριθμομηχανή, σύστημα σύνδεσης, πρόγραμμα επεξεργασίας κειμένου κ.λπ.. Υπάρχουν πολλοί πόροι εκεί έξω για να μάθετε την ανάπτυξη GUI με το Tkinter.
Η καλύτερη υποστήριξη είναι να ακολουθείς τον επίσημο έγγραφα. Για να ξεκινήσετε με το Tkinter, μεταβείτε στα έγγραφα και ξεκινήστε να δημιουργείτε όμορφες εφαρμογές GUI.
# Ενότητες τρίτων
Αιτήματα – αιτήματα HTTP
Η ενότητα αιτημάτων χρησιμοποιείται για την αποστολή όλων των ειδών αιτημάτων HTTP στον διακομιστή. Επιτρέπει την αποστολή αιτημάτων HTTP/1.1. Μπορούμε επίσης να προσθέσουμε κεφαλίδες, δεδομένα και άλλα πράγματα χρησιμοποιώντας λεξικά Python. Καθώς είναι λειτουργική μονάδα τρίτου κατασκευαστή, πρέπει να την εγκαταστήσουμε. Εκτελέστε την ακόλουθη εντολή στο τερματικό ή στη γραμμή εντολών για να εγκαταστήσετε τη λειτουργική μονάδα αιτημάτων.
pip install requests
Είναι εύκολο να εργαστείτε με τη μονάδα αιτημάτων. Μπορούμε να αρχίσουμε να εργαζόμαστε με τα αιτήματα χωρίς προηγούμενη γνώση. Ας δούμε πώς να στείλετε ένα αίτημα λήψης και τι επιστρέφει.
import requests # sening a get request request = requests.get("https://www.google.com/") # print(request.status_code) print(request.url) print(request.request)
Ο παραπάνω κώδικας θα εκτυπώσει το status_code, τη διεύθυνση URL και τη μέθοδο αιτήματος (GET, POST). Θα λάβετε επίσης την πηγή της διεύθυνσης URL. Μπορείτε να αποκτήσετε πρόσβαση σε αυτό με τα byte request.content. μεταβείτε στο έγγραφα της ενότητας αιτημάτων και εξερευνήστε περισσότερα.
BeautifulSoup4 – απόξεση ιστού
Η βιβλιοθήκη BeautifulSoup χρησιμοποιείται για την απόξεση ιστού. Είναι μια εύχρηστη μονάδα για εργασία. Ακόμη και οι αρχάριοι μπορούν να αρχίσουν να εργάζονται με αυτό χρησιμοποιώντας το έγγραφα. Δείτε το δείγμα κώδικα για να διαγράψετε τις λεπτομέρειες των αναφορών πελατών.
Μπορείτε να εγκαταστήσετε το BeautifulSoup πληκτρολογώντας την ακόλουθη εντολή στο τερματικό/γραμμή εντολών.
pip install beautifulsoup4
Και, ένα απλό πρόγραμμα για το πρώτο σας ξύσιμο.
## 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)
Εκτελέστε τον παραπάνω κώδικα για να δείτε τη μαγεία του web scraping. Υπάρχουν περισσότερα πλαίσια απόξεσης ιστού εκεί έξω για να δοκιμάσετε.
# Επιστήμη Δεδομένων και Μηχανική Μάθηση
Υπάρχουν κάποιες βιβλιοθήκες εκεί έξω που έχουν δημιουργηθεί ειδικά για την επιστήμη των δεδομένων και τη μηχανική μάθηση. Όλα αυτά αναπτύσσονται σε C. Είναι αστραπιαία.
Numpy
Numpy χρησιμοποιείται για επιστημονικούς υπολογισμούς.
Μας επιτρέπει να δουλεύουμε πολυδιάστατους πίνακες. Η υλοποίηση πινάκων δεν υπάρχει στην Python. Κυρίως οι προγραμματιστές χρησιμοποιούν numpy στα έργα μηχανικής εκμάθησης. Είναι εύκολο στην εκμάθηση και βιβλιοθήκη ανοιχτού κώδικα. Σχεδόν κάθε μηχανικός μηχανικής μάθησης ή επιστήμονας δεδομένων χρησιμοποιεί αυτήν την ενότητα για πολύπλοκους μαθηματικούς υπολογισμούς.
Εκτελέστε την ακόλουθη εντολή για να εγκαταστήσετε τη μονάδα numpy.
pip install numpy
Πάντα
Πάντα είναι μια ενότητα ανάλυσης δεδομένων. Μπορούμε να φιλτράρουμε τα δεδομένα πιο αποτελεσματικά χρησιμοποιώντας τη βιβλιοθήκη pandas. Προσφέρει διαφορετικούς τύπους δομών δεδομένων που είναι εύχρηστες. Παρέχει επίσης χειρισμό αρχείων με διαφορετικές μορφές αρχείων.
Εγκαταστήστε τη μονάδα χρησιμοποιώντας την ακόλουθη εντολή.
pip install pandas
Matplotlib
Matplotlib είναι μια βιβλιοθήκη σχεδίασης γραφημάτων 2D. Μπορείτε να οπτικοποιήσετε τα δεδομένα χρησιμοποιώντας το Matplotlib.
Μπορούμε να δημιουργήσουμε εικόνες των φιγούρων σε διαφορετικές μορφές. Σχεδιάζουμε διαφορετικούς τύπους διαγραμμάτων όπως γραφήματα ράβδων, γραφήματα σφαλμάτων, ιστογράμματα, διαγράμματα διασποράς κ.λπ.. Μπορείτε να εγκαταστήσετε το matplotlib χρησιμοποιώντας την ακόλουθη εντολή.
pip install matplotlib
Γρήγορη σημείωση: – Μπορείτε να εγκαταστήσετε Ανακόνδας για να αποκτήσετε όλες τις βιβλιοθήκες και τις ενότητες που απαιτούνται για την Επιστήμη των Δεδομένων.
Εάν είστε σοβαροί να μάθετε Python για την επιστήμη δεδομένων και ML, τότε ρίξτε μια ματιά σε αυτό το εξαιρετικό Μάθημα Udemy.
# Πλαίσια Ιστού
Μπορούμε να βρούμε πολλά πλαίσια web στην Python. Θα συζητήσουμε δύο πλαίσια που χρησιμοποιούνται ευρέως από τους προγραμματιστές. Τα δύο πλαίσια είναι το Django και το Flask.
Django
Django είναι ένα πλαίσιο web ανοιχτού κώδικα που αναπτύχθηκε στην Python. Είναι βολικό να δημιουργείτε ιστότοπους με το Django. Μπορούμε να δημιουργήσουμε κάθε είδους ιστότοπους χρησιμοποιώντας αυτό το πλαίσιο. Μερικοί από τους πιο δημοφιλείς ιστότοπους που έχουν δημιουργηθεί με το Django είναι το Instagram, το bitbucket, το Disqus, το Mozilla Firefox κ.λπ.,
- Μπορούμε να δημιουργήσουμε σύνθετους ιστότοπους γρήγορα με τις δυνατότητες του Django.
- Το Django κάνει ήδη πολλές από τις εργασίες που απαιτούνται για την ανάπτυξη Ιστού.
- Παρέχει επίσης ασφάλεια για τις επιθέσεις SQL Injection, δέσμες ενεργειών μεταξύ τοποθεσιών, παραποίηση αιτημάτων μεταξύ τοποθεσιών και clickjacking.
- Μπορούμε να δημιουργήσουμε οποιονδήποτε ιστότοπο από το σύστημα διαχείρισης περιεχομένου έως τους ιστότοπους κοινωνικής δικτύωσης.
Η τεκμηρίωση του Django είναι ξεκάθαρη. Πρέπει να εξοικειωθείτε με την Python για το Django. Αλλά μην ανησυχείτε αν δεν είστε. Μαθαίνοντας το Django είναι εύκολο.
Φλάσκα
Το Flask είναι ένα micro web πλαίσιο που αναπτύχθηκε στην Python.
Είναι πιο πύθωνας από τον Django. Διαθέτει εξαιρετική τεκμηρίωση εδώ. Χρησιμοποιεί τη μηχανή προτύπου Jinja. Είναι πολύ περίπλοκο να δημιουργείς μεγάλους ιστότοπους Flask. Οι περισσότερες από τις δυνατότητες όπως η δρομολόγηση URL, η αποστολή αιτημάτων, τα ασφαλή cookies, οι περίοδοι λειτουργίας κ.λπ., υπάρχουν τόσο στο Django όσο και στο Flask.
Επιλέξτε το πλαίσιο με βάση την πολυπλοκότητα του ιστότοπού σας. Το Django κερδίζει δημοτικότητα μεταξύ των προγραμματιστών. Είναι το πιο χρησιμοποιούμενο πλαίσιο για την ανάπτυξη ιστού στην Python.
συμπέρασμα
Ελπίζω να ενημερωθείτε για διαφορετικές ενότητες, βιβλιοθήκες και πλαίσια για την Python.
Όλοι κάποτε ήταν αρχάριοι.
Ό,τι θέλετε να ξεκινήσετε, πηγαίνετε πρώτα στην τεκμηρίωση και αρχίστε να το μαθαίνετε. Εάν δεν μπορείτε να κατανοήσετε τα έγγραφα, τότε βρείτε μαθήματα συντριβής στο εκπαιδευτικές ιστοσελίδες.