11 bibliothèques et modules Python que tout développeur devrait connaître

Les bibliothèques et les modules facilitent la vie d’un programmeur.

Lorsque vous travaillez sur des projets, vous pouvez rencontrer des scénarios que vous ne pourrez pas résoudre avec le codage standard d’un langage de programmation. Nous avons besoin de bibliothèques et de modules pour surmonter ces problèmes.

Heureusement, Python prend en charge une pléthore de modules et de bibliothèques. Python a des modules intégrés ainsi que des bibliothèques et des modules tiers pour le développement. Nous verrons à la fois des modules intégrés et des modules tiers, qui sont très bénéfiques pour les projets Python. Explorons d’abord les modules intégrés.

# Modules intégrés

Python est livré avec de nombreux modules intégrés pour différents cas d’utilisation. Nous étudierons les modules un par un en fonction de l’usage.

Collections – Types de données de conteneur

Python a différents types de collections pour stocker la collection de données. Par exemple, tuple, list, dict, etc., font partie des collections intégrées de Python. Le module de collections fournit des fonctionnalités supplémentaires aux collections intégrées.

Si vous prenez la collecte de données deque à partir du module collections, cela ressemble plus à une liste Python. Mais, nous pouvons pousser et faire éclater les éléments des deux côtés. C’est plus rapide que la liste. Vous pouvez utiliser le deque en fonction de vos besoins. Voyons un peu de codage réel avec la collecte de données 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)

Exécutez le code ci-dessus ; voir les résultats. Nous avons également d’autres collections de données dans le module des collections.

Certains d’entre eux sont:

Compteur
Renvoie un dict qui contient la fréquence des éléments de la liste.

C’est une sous-classe de la classe dict.

Liste d’utilisateur
Utilisé pour une sous-classe rapide de la liste.
UserDict
Utilisé pour une sous-classe rapide du dict.
UserString
Utilisé pour une sous-classe rapide du str.

Accéder à la documentation du collections module pour explorer toutes les collectes de données et les méthodes.

Remarque rapide : – Utilisez la méthode intégrée dir(object) de Python pour voir toutes les méthodes d’un objet.

CSV – Gestion des fichiers

Nous pouvons utiliser les fichiers CSV (valeurs séparées par des virgules) pour stocker les données tabulaires. Le format le plus couramment utilisé pour importer et exporter les données à partir de feuilles de calcul et de bases de données. Python est livré avec un module appelé CSV pour gérer les fichiers CSV.

Voyons un exemple de lecture des données d’un fichier CSV.

Créez un fichier avec le nom sample.csv sur votre ordinateur portable et collez les données suivantes.

Name,Age,Graduation Year

Hafeez,21,2021

Aslan,23,2019

Rambabu,21,2021

Nous avons des méthodes pour lire et écrire dans le module CSV. Nous verrons comment lire les données des fichiers CSV à l’aide du module 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))

Exécutez le code ci-dessus pour voir les résultats.

Nous aurons également un objet appelé csv.writer() pour écrire les données dans le fichier CSV. Jouez avec les autres méthodes par vous-même en utilisant les méthodes intégrées dir() et help(). Nous avons un autre module appelé JSON, qui est utilisé pour gérer les fichiers JSON. C’est aussi un module intégré.

Aléatoire – génération

Python a un module appelé random qui permet de générer les données de manière aléatoire. Nous pouvons produire n’importe quoi de manière aléatoire en utilisant différentes manières du module aléatoire. Vous pouvez utiliser ce module dans des applications comme le tic-tac-toe, un jeu de dés, etc.,

Voyons un programme simple pour générer des entiers aléatoires à partir d’une plage donnée.

import random

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

Vous vérifiez les autres méthodes du module random en utilisant les méthodes dir() et help(). Écrivons un petit jeu simple en utilisant le module random. Nous pouvons appeler cela un jeu de devinettes de nombres.

Qu’est-ce que le jeu de devinettes de nombres ?

Le programme générera un nombre aléatoire dans la plage de 1 à 100. L’utilisateur devinera le nombre jusqu’à ce qu’il corresponde au nombre aléatoire généré par le programme. A chaque fois, vous imprimerez si le numéro d’utilisateur est inférieur au nombre aléatoire ou supérieur au nombre aléatoire. Ensuite, le code source affichera le nombre de suppositions.

Voir le code ci-dessous pour le programme ci-dessus.

# 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 – applications graphiques

Tkinter est un module intégré pour le développement d’applications GUI (Graphical User Interface). C’est pratique pour les débutants. Nous pouvons développer des applications GUI comme une calculatrice, un système de connexion, un éditeur de texte, etc. Il existe de nombreuses ressources pour apprendre le développement GUI avec Tkinter.

Le meilleur support est de suivre l’officiel documents. Pour commencer avec le Tkinter, accédez à la documentation et commencez à créer de belles applications GUI.

# Modules tiers

Requêtes – Requêtes HTTP

Le module Requests est utilisé pour envoyer toutes sortes de requêtes HTTP au serveur. Il permet l’envoi de requêtes HTTP/1.1. Nous pouvons également ajouter des en-têtes, des données et d’autres éléments à l’aide de dictionnaires Python. Comme il s’agit d’un module tiers, nous devons l’installer. Exécutez la commande suivante dans le terminal ou la ligne de commande pour installer le module requests.

pip install requests

Il est simple de travailler avec le module de requêtes. Nous pouvons commencer à travailler avec les demandes sans aucune connaissance préalable. Voyons comment envoyer une requête get et ce qu’elle renvoie.

import requests

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

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

Le code ci-dessus imprimera le status_code, l’URL et la méthode de requête (GET, POST). Vous obtiendrez également la source de l’URL. Vous pouvez y accéder avec les octets request.content. Allez à la documents du module de requêtes et explorez-en davantage.

BeautifulSoup4 – grattage Web

La bibliothèque BeautifulSoup est utilisée pour le web scraping. C’est un module pratique avec lequel travailler. Même les débutants peuvent commencer à travailler avec le documents. Consultez l’exemple de code pour supprimer les détails des rapports des clients.

Vous pouvez installer BeautifulSoup en tapant la commande suivante dans le terminal/ligne de commande.

pip install beautifulsoup4

Et, un programme simple pour votre premier grattage.

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

Exécutez le code ci-dessus pour voir la magie du web scraping. Il existe d’autres frameworks de scraping Web que vous pouvez essayer.

# Science des données et apprentissage automatique

Il existe des bibliothèques spécialement créées pour la science des données et l’apprentissage automatique. Tout cela est développé en C. Ils sont ultra-rapides.

Numpy

Numpy est utilisé pour le calcul scientifique.

Cela nous permet de travailler des tableaux multidimensionnels. L’implémentation des tableaux n’existe pas en Python. Les développeurs utilisent principalement numpy dans leurs projets d’apprentissage automatique. C’est facile à apprendre et une bibliothèque open-source. Presque tous les ingénieurs en apprentissage automatique ou scientifiques des données utilisent ce module pour des calculs mathématiques complexes.

Exécutez la commande suivante pour installer le module numpy.

pip install numpy

Pandas

Pandas est un module d’analyse de données. Nous pouvons filtrer les données plus efficacement en utilisant la bibliothèque pandas. Il propose différents types de structures de données pratiques à utiliser. Il fournit également la gestion des fichiers avec différents formats de fichiers.

Installez le module à l’aide de la commande suivante.

pip install pandas

Matplotlib

Matplotlib est une bibliothèque de tracé de graphes 2D. Vous pouvez visualiser les données à l’aide de Matplotlib.

Nous pouvons générer des images des figures dans différents formats. Nous traçons différents types de diagrammes comme des diagrammes à barres, des diagrammes d’erreurs, des histogrammes, des nuages ​​de points, etc., Vous pouvez installer le matplotlib en utilisant la commande suivante.

pip install matplotlib

Remarque rapide : – Vous pouvez installer Anaconda pour obtenir toutes les librairies et modules nécessaires à la Data Science.

Si vous souhaitez vraiment apprendre Python pour la science des données et le ML, consultez ce brillant Cours Udemy.

# Cadres Web

Nous pouvons trouver de nombreux frameworks Web en Python. Nous aborderons deux frameworks largement utilisés par les développeurs. Les deux frameworks sont Django et Flask.

Django

Django est un framework web open-source développé en Python. Il est pratique de créer des sites Web avec Django. Nous pouvons générer toutes sortes de sites en utilisant ce framework. Certains des sites les plus populaires construits avec Django sont Instagram, bitbucket, Disqus, Mozilla Firefox, etc.,

  • Nous pouvons créer rapidement des sites Web complexes avec les fonctionnalités de Django.
  • Le Django effectue déjà une grande partie des tâches requises pour le développement Web.
  • Il fournit également une sécurité pour les attaques par injection SQL, les scripts intersites, la falsification de requêtes intersites et le détournement de clics.
  • Nous pouvons créer n’importe quel site Web, du système de gestion de contenu aux sites sociaux.

La documentation de Django est sans ambiguïté. Vous devez vous familiariser avec Python pour Django. Mais ne vous inquiétez pas si vous ne l’êtes pas. Apprendre Django est facile.

Ballon

Flask est un micro framework web développé en Python.

C’est plus pythonique que Django. Il a une excellente documentation ici. Il utilise le moteur de template Jinja. Il est très complexe de créer de gros sites Flask. La plupart des fonctionnalités telles que le routage d’URL, la répartition des demandes, les cookies sécurisés, les sessions, etc., sont présentes à la fois dans Django et Flask.

Choisissez le cadre en fonction de la complexité de votre site Web. Django gagne en popularité parmi les développeurs. C’est le framework le plus utilisé pour le développement web en Python.

Conclusion

J’espère que vous avez découvert différents modules, bibliothèques et frameworks pour Python.

Tout le monde une fois un débutant.

Quoi que vous vouliez commencer, consultez d’abord la documentation et commencez à l’apprendre. Si vous ne comprenez pas la documentation, recherchez des cours intensifs sur le sites Web éducatifs.