Gestion des erreurs dans Power Automate via le branchement parallèle
Découvrez l
Si vous avez lutté avec des listes Python et que vous vous demandez comment vous pouvez les enregistrer dans un fichier CSV soigné, vous êtes au bon endroit. L'une des tâches les plus courantes en Python consiste à écrire une liste dans un fichier délimité par des virgules, et aujourd'hui, nous allons vous transformer en un pro de la création de fichiers CSV !
Pour écrire une liste au format CSV en Python, vous pouvez utiliser un module intégré appelé csv spécialement conçu pour lire et écrire des fichiers CSV. La classe csv.writer du module fournit des fonctions pour écrire des listes simples et imbriquées dans des fichiers CSV.
D'autres méthodes pour obtenir le même résultat incluent l'installation et l'utilisation des modules externes Pandas ou NumPy.
Cet article explique les concepts et vous guide étape par étape tout au long du processus avec tous les exemples de code dont vous avez besoin pour commencer.
Allons-y!
Table des matières
Que sont les listes en Python ?
Une liste en Python est une structure de données intégrée qui est utilisée pour stocker plusieurs éléments dans une seule variable.
Les listes Python sont :
commandé (en partant de zéro).
mutable (peut être modifié).
capable de stocker des valeurs en double.
Les listes sont définies en ayant des valeurs entre crochets [] et les éléments sont séparés par des virgules. Les éléments d'une liste peuvent être de n'importe quel type de données, tels que des nombres, des chaînes et même d'autres listes.
Voici un exemple de création d'une liste simple :
products = [“t-shirts”, “hoodies”, “jeans”]
Listes de listes en Python
Les listes de listes sont également appelées listes imbriquées . Ce sont des listes qui contiennent d'autres listes comme éléments.
Ils sont souvent utilisés en Python pour représenter des données structurées en lignes et en colonnes. Ils sont couramment utilisés dans les scénarios où vous devez regrouper des données associées.
Voici un exemple de création d'une liste imbriquée qui représente les produits, les prix et les ventes.
product_sales = [[“t-shirts”, 9.99, 342], [“hoodies”, 24.99, 118], [“jeans”, 29.99, 612]
Fichiers CSV et module CSV en Python
Les fichiers CSV représentent des données tabulaires dans un format de fichier simple. Chaque ligne du fichier correspond à une ligne du tableau. Chaque valeur de la ligne (ou de la ligne) est séparée par une virgule. C'est pourquoi le format est appelé "Valeurs séparées par des virgules".
Voici à quoi pourrait ressembler un fichier représentant des produits, des prix et des ventes au format CSV :
t-shirts, 9,99, 342
sweats à capuche, 24,99, 118
jeans, 29,99, 612
Le module csv est un module Python intégré qui fournit des outils pour lire et écrire des données au format CSV. Il est particulièrement utile en raison de sa simplicité et de son efficacité.
En important le module csv , vous accédez à la classe csv.writer() , qui vous permet de créer un objet écrivain capable d'écrire une chaîne délimitée dans un objet fichier.
Très bien, maintenant que nous avons passé en revue les bases, voyons comment vous pouvez écrire une liste simple au format CSV en utilisant Python dans la section suivante.
Comment écrire une liste simple au format CSV en Python
La première technique à apprendre est pour un fichier liste simple (non imbriqué) qui ressemble à ceci :
t-shirts
sweats à capuche
jeans
Les grandes étapes pour écrire la liste dans un fichier CSV sont :
Importez le module csv .
Créez une liste Python.
Ouvrez un fichier CSV en mode écriture.
Utilisez la fonction writerow() de l' objet csv writer .
Enregistrez et fermez le fichier CSV.
La fonction writerow() écrira plusieurs lignes, c'est-à-dire toutes les données dans le fichier. Voici le code avec des commentaires détaillés.
# Step 1: Importing the CSV module
import csv
# Step 2: Creating a Python list
my_list = ["t-shirts", "hoodies", "jeans"]
# Step 3: Opening a CSV file in write mode
with open('products.csv', 'w', newline='') as file:
# Step 4: Using csv.writer to write the list to the CSV file
writer = csv.writer(file)
writer.writerow(my_list) # Use writerow for single list
# Step 5: The file is automatically closed when exiting the 'with' block
Utilisation des gestionnaires de contexte
Si vous n'êtes pas familier avec la méthode "avec" de travail avec les fichiers, il s'agit d'une technique qui utilise un gestionnaire de contexte qui gère les ressources de fichiers.
Par exemple, lorsque vous l'utilisez pour écrire des fichiers CSV, les fichiers sont automatiquement fermés lorsque l'instruction with se termine.
Comment écrire une liste de listes au format CSV
Avec une liste de listes, chaque liste interne doit être une ligne CSV dans le fichier. Voici à quoi ressembleront les données CSV :
Les grandes étapes sont similaires à la section précédente, sauf que vous utilisez la fonction writerows() au lieu de writerow() .
# Step 1: Importing the CSV module
import csv
# Step 2: Creating a Python list of lists
my_list = [["t-shirts", 9.99, 342], ["hoodies", 24.99, 118], ["jeans", 29.99, 612]]
# Step 3: Opening a CSV file in write mode
with open('product_sales.csv', 'w', newline='') as file:
# Step 4: Using csv.writer to write the list to the CSV file
writer = csv.writer(file)
writer.writerows(my_list) # Use writerows for nested list
# Step 5: The file is automatically closed when exiting the 'with' bloc
Dans ce deuxième exemple, chaque liste interne est écrite comme une ligne distincte dans le fichier.
Notez que le module csv vous évite d'avoir à énumérer ou parcourir la structure de données et à l'écrire ligne par ligne.
Ensuite, nous verrons comment vous pouvez ajouter des données aux fichiers CSV existants.
Comment ajouter des données aux fichiers CSV existants
Pour ajouter des données à un fichier CSV existant, procédez comme suit :
Importez le module csv .
Ouvrez le fichier CSV en mode ajout ('a') à l'aide du gestionnaire de contexte with open() .
Créez une nouvelle liste contenant les données à ajouter.
Créez un objet csv.writer() en transmettant le fichier ouvert.
Utilisez l' objet csv.writer() pour écrire la nouvelle liste dans le fichier CSV.
Voici un exemple qui écrit ajoute une liste imbriquée (une ligne) à un fichier existant :
import csv
new_row = [["leggings", 22.99, 483]]
with open('product_sales.csv', 'a', newline='') as file:
writer = csv.writer(file)
writer.writerows(new_row)
Assurez-vous d'inclure newline=" lors de l'ouverture du fichier pour garantir un formatage correct du fichier CSV sur différentes plates-formes.
Dans la section suivante, nous verrons comment vous pouvez utiliser la classe DictWriter pour écrire dans des fichiers CSV.
Comment utiliser DictWriter pour écrire dans des fichiers CSV
Jusqu'à présent, nous avons appris à écrire des listes dans des fichiers CSV. Cependant, Python a d'autres structures de données comme des dictionnaires qui peuvent également être écrites dans un fichier CSV.
La classe DictWriter() fait également partie du module csv . Elle est similaire à la classe writer() mais elle gère les données du dictionnaire.
Voici un exemple :
import csv
product_sales_dict = [
{"product": "t-shirts", "price": 9.99, "sales": 342},
{"product": "hoodies", "price": 24.99, "sales": 118},
{"product": "jeans", "price": 29.99, "sales": 612}
]
fieldnames = ["product", "price", "sales"]
with open("dictionary.csv", "w", newline="") as csvfile:
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
writer.writerows(product_sales_dict)
Techniques CSV avancées en Python
L'utilisation du module csv n'est pas la seule méthode pour exporter des listes Python sous forme de fichiers CSV.
Deux bibliothèques populaires qui fournissent des fonctionnalités pour cette tâche sont Pandas et NumPy .
1. Comment exporter des données avec des pandas
Pandas est une bibliothèque Python largement utilisée pour la manipulation et l'analyse de données.
Pour enregistrer des listes Python en tant que fichier CSV, vous pouvez créer un pandas DataFrame à partir de la liste, puis utiliser la méthode to_csv() , comme indiqué ci-dessous :
import pandas as pd
# Example list of lists
data = [['ABC', 1.2, 30], ['XYZ', 0.8, 20], ['LMN', 2.3, 50]]
# Create a DataFrame from the list
data_frame = pd.DataFrame(data, columns=['Name', 'Value', 'Quantity'])
# Save DataFrame to CSV file
data_frame.to_csv('output.csv', index=False, encoding='utf-8')
Si vos données incluent des caractères non ASCII, vous devrez peut-être définir le paramètre d'encodage sur une valeur appropriée, telle que "utf-8".
2. Comment utiliser NumPy pour enregistrer des listes au format CSV
Une autre bibliothèque à considérer est NumPy qui prend en charge le travail avec des tableaux et des matrices.
NumPy propose la fonction np.savetxt() comme méthode pratique pour enregistrer des données dans un fichier CSV.
Voici un exemple montrant comment enregistrer une liste dans un fichier CSV à l'aide de NumPy :
import numpy as np
# Example list of lists
data = [['ABC', 1.2, 30], ['XYZ', 0.8, 20], ['LMN', 2.3, 50]]
# Save the list to a CSV file
np.savetxt('output.csv', data, delimiter=',', fmt='%s', header='Name,Value,Quantity', comments='')
Voici une ventilation des paramètres savetxt() :
délimiteur : spécifie le séparateur de champs
Paramètre fmt : indique le format des données en cours de sauvegarde
%s : l'espace réservé pour les valeurs de chaîne
header : une liste d'en-têtes de colonnes
comments : contrôle les caractères qui commencent les commentaires dans le fichier de sortie.
Comment nettoyer les données avant d'écrire dans un fichier
C'est une bonne idée de nettoyer vos données avant de les écrire dans des fichiers texte. Cette vidéo vous donnera les techniques dont vous avez besoin :
Dernières pensées
L'écriture d'une liste dans un fichier CSV en Python est un moyen simple et efficace de stocker et de partager des données. Vous avez appris à utiliser le module csv intégré de Python pour effectuer cette tâche.
Vous êtes maintenant familiarisé avec la création d'une liste Python, l'importation du module csv , l'ouverture d'un fichier CSV et l'utilisation de csv.writer pour écrire la liste dans le fichier CSV.
Vous avez également appris les scénarios plus complexes d'écriture d'une liste de listes dans un fichier CSV, ce qui vous permet de stocker des données tabulaires.
N'oubliez pas, comme toutes les choses en programmation, la pratique rend parfait. Alors, prenez ces nouvelles connaissances, jouez avec et voyez comment cela fonctionne avec différents ensembles de données et besoins de projet.
Ce n'est que la pointe de l'iceberg Python. Il y a tellement plus à explorer dans le vaste monde de Python, alors ne vous arrêtez pas là. Mais pour aujourd'hui, donnez-vous une tape dans le dos. Vous avez réussi à apprivoiser la bête de la conversion de liste en CSV !
Découvrez l
Découvrez comment comparer facilement des tables dans Power Query pour signaler les différences et optimiser vos analyses de données.
Dans ce blog, vous découvrirez comment diviser les colonnes dans LuckyTemplates par délimiteurs à l'aide de DAX, une méthode efficace pour gérer des modèles de données complexes.
Découvrez comment récolter une valeur avec SELECTEDVALUE DAX pour des calculs dynamiques dans LuckyTemplates.
Calculez la marge en pourcentage à l
Dans ce didacticiel, nous allons explorer une méthode rapide pour convertir du texte en formats de date à l
Dans ce blog, vous apprendrez à enregistrer automatiquement la pièce jointe d
Découvrez comment adapter les cellules Excel au texte avec ces 4 solutions simples pour améliorer la présentation de vos données.
Dans ce didacticiel SSRS Report Builder, découvrez comment utiliser le générateur d
Découvrez les outils pour créer un thème de couleur efficace pour vos rapports LuckyTemplates et améliorer leur apparence.