Comment supprimer les modules inutilisés dans un script Python ?

Published: 09 février 2024

Tags: Python;

DMCA.com Protection Status

Introduction

Après avoir travaillé sur un script Python, il est courant de se retrouver avec des modules inutilisés. Ces modules peuvent être ajoutés lors du développement et ne sont plus nécessaires par la suite, ou bien ils ont été installés pour tester une fonctionnalité mais ne sont pas utilisés dans le code final. Dans tous les cas, il est important de les supprimer afin d'optimiser le script et réduire la taille du fichier.

Voici comment vous pouvez facilement supprimer tous les modules qui ne sont pas utilisés :

Supprimer les modules inutilisés en utilisant autoflake

Un moyen d'identifier les modules inutilisés dans un script Python est d'utiliser autoflake. Pour installer autoflake, il suffit d'exécuter la commande suivante:

pip install --upgrade autoflake

Une fois installé, vous pouvez appliquer autoflake à n'importe lequel de vos scripts Python. Par exemple, vous pouvez utiliser la commande ci-dessous pour supprimer tous les imports inutilisés d'un script nommé "myscript.py":

autoflake --remove-all-unused-imports myscript.py

Par exemple, lors de l'utilisation de mon script, cela renvoie :

--- original/Untitled10.py
+++ fixed/Untitled10.py
@@ -8,32 +8,16 @@
 import numpy as np
 import numpy.ma as ma
 import pandas as pd
-import glob
 import matplotlib.pyplot as plt
 import matplotlib.cm as cm
 import matplotlib
 import warnings
-import pyproj
 import matplotlib as mpl
-import cartopy.crs as ccrs
-import matplotlib.patches as mpatches
-import re
-import random
-import datetime
 import geopandas
-import htmlmin
 import warnings

-from bokeh.plotting import figure, show, save
+from bokeh.plotting import figure, show
 from bokeh.plotting import output_notebook
-from bokeh.plotting import output_file, save
-from bokeh.models.tools import PanTool, SaveTool, WheelZoomTool, BoxZoomTool, ResetTool
-from sklearn.cluster import AgglomerativeClustering
-from datetime import datetime, timedelta
-from scipy.spatial.distance import cdist
-from scipy.interpolate import griddata
-from scipy.interpolate.interpnd import _ndim_coords_from_arrays
-from scipy.spatial import cKDTree
 from scipy import stats

Lines starting with a "-" indicate unused modules.

Supprimer les modules inutilisés dans un jupyter notebook

Pour supprimer les modules inutilisés dans un notebook Jupyter, nous pouvons simplement commencer par le convertir en un script Python. Deux options sont disponibles pour cette tâche. La première option consiste à accéder au notebook Jupyter, cliquer sur "Fichier", puis sélectionner "Télécharger sous", et enfin choisir "Python" dans le menu déroulant (comme indiqué dans la capture d'écran ci-dessous).

Comment supprimer les modules inutilisés dans un script Python ?
Comment supprimer les modules inutilisés dans un script Python ?

Alternativement, nous pouvons utiliser la commande suivante :

jupyter nbconvert --to python filename.ipynb

Remplacez le terme "nom de fichier" par le nom de votre notebook Jupyter.

Par la suite, nous pouvons utiliser autoflake comme nous l'avons fait dans la section précédente.

autoflake --remove-all-unused-imports filename.py

Références

Image

of