Tous les cours gratuit

Python

Les Tableaux en Python : Un Guide Complet pour Manipuler des Données Tabulaires et les Exporter en PDF

Les tableaux en Python , ou listes, sont des structures de données extrêmement polyvalentes et utiles pour stocker et manipuler des données tabulaires. Que vous travailliez sur de petites analyses de données ou sur des projets de grande envergure, comprendre comment manipuler les tableaux en Python est essentiel. De plus, il est souvent nécessaire de pouvoir exporter ces données sous forme de documents PDF pour partager vos résultats avec d’autres personnes. Dans cet article, nous explorerons en détail comment travailler avec des tableaux en Python et comment exporter ces données en PDF.

1. Création et Manipulation de Tableaux en Python

Création de Tableaux

En Python, les tableaux sont créés en utilisant des crochets []. Par exemple, pour créer un tableau de nombres entiers, vous pouvez faire :

tableau = [1, 2, 3, 4, 5]
Accès aux Éléments d’un Tableau

Vous pouvez accéder aux éléments d’un tableau en utilisant l’index de l’élément. L’indexation commence à zéro en Python. Par exemple, pour accéder au premier élément du tableau ci-dessus, vous pouvez faire :

premier_element = tableau[0]
Manipulation de Tableaux

Python offre une variété de méthodes pour manipuler les tableaux, telles que l’ajout d’éléments, la suppression d’éléments, le tri et bien plus encore. Voici quelques exemples :

# Ajouter un élément à la fin du tableau
tableau.append(6)

# Supprimer un élément du tableau
del tableau[2]

# Trier le tableau
tableau.sort()

2. Exportation de Données Tabulaires en PDF

Maintenant que nous savons comment manipuler les tableaux en Python, voyons comment nous pouvons exporter ces données en PDF. Pour ce faire, nous utiliserons la bibliothèque reportlab.

Installation de ReportLab

Pour installer reportlab, vous pouvez utiliser pip :

pip install reportlab
Exportation de Données en PDF

Voici comment vous pouvez exporter des données tabulaires en PDF en utilisant reportlab :

from reportlab.lib import colors
from reportlab.lib.pagesizes import letter
from reportlab.platypus import SimpleDocTemplate, Table, TableStyle

def export_to_pdf(data, filename):
    doc = SimpleDocTemplate(filename, pagesize=letter)
    table = Table(data)

    # Style de la table
    style = TableStyle([('BACKGROUND', (0,0), (-1,0), colors.grey),
                        ('TEXTCOLOR',(0,0),(-1,0),colors.whitesmoke),
                        ('ALIGN', (0,0), (-1,-1), 'CENTER'),
                        ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
                        ('BOTTOMPADDING', (0,0), (-1,0), 12),
                        ('BACKGROUND', (0,1), (-1,-1), colors.beige),
                        ('GRID', (0,0), (-1,-1), 1, colors.black)])

    table.setStyle(style)
    doc.build([table])

# Exemple d'utilisation
data = [
    ['Nom', 'Âge', 'Ville'],
    ['Alice', '25', 'Paris'],
    ['Bob', '30', 'New York'],
    ['Charlie', '40', 'Londres']
]

export_to_pdf(data, 'donnees.pdf')

Ce code générera un fichier PDF nommé donnees.pdf contenant les données tabulaires que nous avons fournies.

Voici comment vous pourriez implémenter ces cas pratiques en utilisant du code Python :

Cas Pratique 1 : Gestion des Stocks
# Données de stock
stocks = [
    {"produit": "Produit A", "quantite": 100, "prix_unitaire": 10},
    {"produit": "Produit B", "quantite": 150, "prix_unitaire": 15},
    {"produit": "Produit C", "quantite": 200, "prix_unitaire": 20}
]

# Fonction pour exporter les données en PDF
def exporter_stock_pdf(data, filename):
    from reportlab.lib.pagesizes import letter
    from reportlab.platypus import SimpleDocTemplate, Table, TableStyle

    doc = SimpleDocTemplate(filename, pagesize=letter)
    table_data = [[key.capitalize() for key in data[0].keys()]]
    for item in data:
        table_data.append([str(value) for value in item.values()])

    table = Table(table_data)
    doc.build([table])

# Exporter les données de stock en PDF
exporter_stock_pdf(stocks, "gestion_stocks.pdf")
Cas Pratique 2 : Rapports Financiers
# Données financières
rapport_financier = [
    {"mois": "Janvier", "revenus": 5000, "depenses": 3000, "benefice": 2000},
    {"mois": "Février", "revenus": 6000, "depenses": 3500, "benefice": 2500},
    {"mois": "Mars", "revenus": 7000, "depenses": 4000, "benefice": 3000}
]

# Exporter les données financières en PDF
exporter_stock_pdf(rapport_financier, "rapport_financier.pdf")
Cas Pratique 3 : Suivi des Projets
# Données de suivi de projet
suivi_projet = [
    {"tache": "Analyse des besoins", "debut": "2024-01-01", "fin": "2024-01-15", "responsable": "Alice"},
    {"tache": "Développement", "debut": "2024-01-16", "fin": "2024-02-15", "responsable": "Bob"},
    {"tache": "Tests et validation", "debut": "2024-02-16", "fin": "2024-03-01", "responsable": "Charlie"}
]

# Exporter les données de suivi de projet en PDF
exporter_stock_pdf(suivi_projet, "suivi_projet.pdf")
Cas Pratique 4 : Planification des Ressources Humaines
# Données de planification des ressources humaines
planning_rrh = [
    {"employe": "Alice", "tache": "Développement", "debut": "2024-01-01", "fin": "2024-01-15"},
    {"employe": "Bob", "tache": "Tests", "debut": "2024-01-16", "fin": "2024-02-01"},
    {"employe": "Charlie", "tache": "Validation", "debut": "2024-02-02", "fin": "2024-02-15"}
]

# Exporter les données de planification des ressources humaines en PDF
exporter_stock_pdf(planning_rrh, "planning_rrh.pdf")

Ces exemples utilisent la bibliothèque reportlab pour exporter les données en PDF. Chaque cas pratique utilise des données spécifiques stockées dans des tableaux Python, qui sont ensuite converties en documents PDF pour une visualisation et un partage faciles.

Voici comment vous pourriez aborder ces cas particuliers avec du code :

Cas Particulier 1 : Gestion des Données Manquantes
# Remplacer les valeurs manquantes par des chaînes vides
for row in data:
    for i, value in enumerate(row):
        if value is None:
            row[i] = ""

# Exclure les lignes avec des valeurs manquantes
data_sans_valeurs_manquantes = [row for row in data if None not in row]
Cas Particulier 2 : Formatage des Données
# Formatage des nombres avec deux décimales
for row in data:
    row["prix_unitaire"] = "{:.2f}".format(row["prix_unitaire"])

# Formatage des dates au format "AAAA-MM-JJ"
for row in data:
    row["debut"] = row["debut"].strftime("%Y-%m-%d")
    row["fin"] = row["fin"].strftime("%Y-%m-%d")
Cas Particulier 3 : Gestion des Grandes Quantités de Données
import pandas as pd

# Convertir les données en DataFrame pandas
df = pd.DataFrame(data)

# Optimiser les performances en utilisant les fonctionnalités de pandas
# Par exemple, utiliser des opérations vectorisées plutôt que des boucles
Cas Particulier 4 : Personnalisation du Style du PDF
from reportlab.lib.styles import getSampleStyleSheet
from reportlab.platypus import Paragraph, SimpleDocTemplate

# Créer un style personnalisé pour le PDF
styles = getSampleStyleSheet()
custom_style = styles["BodyText"]
custom_style.fontName = "Helvetica-Bold"
custom_style.fontSize = 12

# Utiliser le style personnalisé pour le contenu du PDF
content = [Paragraph("Contenu avec style personnalisé", custom_style)]

# Générer le PDF avec le style personnalisé
doc = SimpleDocTemplate("output.pdf")
doc.build(content)
Cas Particulier 5 : Exportation de Graphiques ou de Diagrammes
import matplotlib.pyplot as plt

# Générer un graphique avec matplotlib
plt.plot([1, 2, 3, 4], [10, 20, 25, 30])
plt.xlabel("X")
plt.ylabel("Y")
plt.title("Titre du Graphique")

# Sauvegarder le graphique en tant qu'image
plt.savefig("graphique.png")

# Intégrer l'image dans le PDF avec reportlab
from reportlab.platypus import Image
content = [Image("graphique.png")]

# Générer le PDF avec le graphique
doc = SimpleDocTemplate("output.pdf")
doc.build(content)

En utilisant du code, vous pouvez mettre en œuvre des solutions pour gérer les cas particuliers rencontrés lors de la manipulation de tableaux en Python et de leur exportation en PDF. Cela vous permet d’avoir un contrôle plus précis sur le traitement des données et la présentation des résultats.

Conclusion

Les tableaux en Python sont des outils puissants pour stocker et manipuler des données tabulaires. Avec l’aide de bibliothèques telles que reportlab, il est facile d’exporter ces données en PDF pour les partager avec d’autres. En combinant ces compétences, vous serez en mesure de gérer efficacement des ensembles de données de toutes tailles et de communiquer vos résultats de manière professionnelle.

Autres articles

Manipulation des Tableaux en Python avec Numpy
Numpy est une bibliothèque puissante et efficace pour la manipulation...
Read more
Manipulation des Tableaux en Python - Pandas
Python propose plusieurs façons de manipuler des tableaux en Python...
Read more
Expressions Régulières - Regex en Python
Les expressions régulières (ou Regex en Python ) sont un...
Read more
AZ

Recent Posts

Tableau Excel de Gestion de Location d’Appartement

Télécharger un modèle de Tableau Excel de Gestion de Location d'Appartement 👇 La gestion d'un…

3 heures ago

Exercices Corrigés en Comptabilité Analytique : Méthode des Centres d’Analyse

Cet article est une partie de la série des Exercices Corrigés en Comptabilité Analytique La…

4 heures ago

Résoudre des Exercices en Comptabilité Analytique – Éléments et Notions Clés

La comptabilité analytique (ou comptabilité de gestion) est un outil essentiel pour comprendre la rentabilité…

7 heures ago

QCM en Gestion de Production pour Entretien – Guide détaillé

Cet article détaille des exemples de QCM en Gestion de Production 👇 La gestion de…

7 heures ago

QCM Gestion de Stock : pour se Préparer aux Entretiens

Le rôle de gestionnaire de stock est crucial dans les entreprises, particulièrement dans les secteurs…

7 heures ago

Exercices Corrigés en Rapprochement Bancaire

Résoudre des Exercices Corrigés en Rapprochement Bancaire Le rapprochement bancaire est une activité cruciale en…

7 heures ago

This website uses cookies.