Cum se scrie o listă în CSV în Python

Cum se scrie o listă în CSV în Python

Dacă te-ai luptat cu listele Python și te-ai întrebat cum le poți salva ca fișier CSV ordonat, ești în locul potrivit. Una dintre cele mai comune sarcini în Python este să scrieți o listă într-un fișier delimitat prin virgulă, iar astăzi vă vom transforma într-un profesionist în conjurarea fișierelor CSV!

Pentru a scrie o listă în CSV în Python, puteți utiliza un modul încorporat numit csv, care este conceput special pentru citirea și scrierea fișierelor CSV. Clasa csv.writer a modulului oferă funcții pentru scrierea unor liste simple și imbricate în fișierele CSV.

Alte metode pentru a obține același rezultat includ instalarea și utilizarea modulelor externe Pandas sau NumPy.

Acest articol vă va explica conceptele și vă va ghida pas cu pas prin proces, cu toate exemplele de cod de care aveți nevoie pentru a începe.

Să mergem!

Cuprins

Ce sunt listele în Python?

Cum se scrie o listă în CSV în Python

O listă în Python este o structură de date încorporată care este utilizată pentru a stoca mai multe articole într-o singură variabilă.

Listele Python sunt:

  • ordonat (începând de la zero).

  • mutabil (poate fi modificat).

  • capabil să stocheze valori duplicate.

Listele sunt definite având valori între paranteze drepte [], iar elementele sunt separate prin virgule. Elementele dintr-o listă pot fi de orice tip de date, cum ar fi numere, șiruri și chiar alte liste.

Iată un exemplu de creare a unei liste simple:

products = [“t-shirts”, “hoodies”, “jeans”]

Liste de liste în Python

Listele de liste sunt cunoscute și ca liste imbricate . Acestea sunt liste care conțin alte liste ca elemente.

Ele sunt adesea folosite în Python pentru a reprezenta date structurate în rânduri și coloane. Sunt utilizate în mod obișnuit în scenariile în care trebuie să grupați datele asociate.

Iată un exemplu de creare a unei liste imbricate care reprezintă produse, prețuri și vânzări.

product_sales = [[“t-shirts”, 9.99, 342], [“hoodies”, 24.99, 118], [“jeans”, 29.99, 612]

Fișierele CSV și modulul CSV în Python

Fișierele CSV reprezintă date tabelare într-un format simplu de fișier. Fiecare linie din fișier corespunde unui rând din tabel. Fiecare valoare din rând (sau linie) este separată prin virgulă - de aceea formatul se numește „Valori separate prin virgulă”.

Iată cum ar putea arăta un fișier care reprezintă produse, prețuri și vânzări în format CSV:

  • tricouri, 9,99, 342

  • hanorace, 24,99, 118

  • blugi, 29,99, 612

Cum se scrie o listă în CSV în Python

Modulul csv este un modul Python încorporat care oferă instrumente pentru a citi și scrie date în format CSV. Este deosebit de util datorită simplității și eficienței sale.

Importând modulul csv , obțineți acces la clasa csv.writer() , care vă permite să creați un obiect writer care poate scrie un șir delimitat într-un obiect fișier.

Bine, acum că am trecut peste elementele de bază, să aruncăm o privire la modul în care puteți scrie o listă simplă în CSV folosind Python în secțiunea următoare.

Cum să scrieți o listă simplă în CSV în Python

Prima tehnică de învățat este pentru un fișier de listă simplu (neimbricat) care arată astfel:

  • tricouri

  • hanorace

  • blugi

Cum se scrie o listă în CSV în Python

Pașii generali pentru a scrie lista în fișierul CSV sunt:

  1. Importă modulul csv .

  2. Creați o listă Python.

  3. Deschideți un fișier CSV în modul de scriere.

  4. Utilizați funcția writerow() a obiectului writer csv .

  5. Salvați și închideți fișierul CSV.

Funcția writerow() va scrie mai multe rânduri, adică toate datele în fișier. Iată codul cu comentarii detaliate.

# 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

Utilizarea managerilor de context

Dacă nu sunteți familiarizat cu metoda „cu” de lucru cu fișierele, aceasta este o tehnică care utilizează un manager de context care gestionează resursele fișierelor.

De exemplu, când îl utilizați pentru a scrie fișiere CSV, fișierele sunt închise automat când se termină instrucțiunea with.

Cum se scrie o listă de liste în CSV

Cu o listă de liste, fiecare listă interioară ar trebui să fie un rând CSV în fișier. Iată cum vor arăta datele CSV:

Cum se scrie o listă în CSV în Python

Pașii largi sunt similari cu secțiunea anterioară, cu excepția faptului că utilizați funcția writerows() în loc 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

În acest al doilea exemplu, fiecare listă interioară este scrisă ca un rând separat în fișier.

Rețineți că modulul csv vă permite să evitați să enumerați sau să treceți în buclă prin structura de date și să o scrieți rând cu rând.

În continuare, vom analiza cum puteți adăuga date la fișierele CSV existente.

Cum să adăugați date la fișierele CSV existente

Cum se scrie o listă în CSV în Python

Pentru a adăuga date la un fișier CSV existent, urmați acești pași:

  1. Importă modulul csv .

  2. Deschideți fișierul CSV în modul adăugare („a”) folosind managerul de context cu open() .

  3. Creați o nouă listă care să conțină date de atașat.

  4. Creați un obiect csv.writer() prin trecerea fișierului deschis.

  5. Utilizați obiectul csv.writer() pentru a scrie noua listă în fișierul CSV.

Iată un exemplu care scrie adaugă o listă imbricată (un rând) la un fișier existent:

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)

Asigurați-vă că includeți newline=" când deschideți fișierul pentru a asigura formatarea corectă a fișierului CSV pe diferite platforme.

În secțiunea următoare, vom aborda modul în care puteți utiliza clasa DictWriter pentru a scrie în fișiere CSV.

Cum să utilizați DictWriter pentru a scrie în fișiere CSV

Cum se scrie o listă în CSV în Python

Până acum, am învățat cum să scriem liste în fișierele CSV. Cu toate acestea, Python are alte structuri de date, cum ar fi dicționare , care pot fi scrise și într-un fișier CSV.

Clasa DictWriter () face, de asemenea, parte din modulul csv . Este similar cu clasa writer() dar gestionează datele din dicționar.

Iată un exemplu:

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)

Tehnici CSV avansate în Python

Utilizarea modulului csv nu este singura metodă de a exporta liste Python ca fișiere CSV.

Două biblioteci populare care oferă funcționalitate pentru această sarcină sunt Pandas și NumPy .

1. Cum să exportați date cu Pandas

Cum se scrie o listă în CSV în Python

Pandas este o bibliotecă Python utilizată pe scară largă pentru manipularea și analiza datelor.

Pentru a salva listele Python ca fișier CSV, puteți crea un Pandas DataFrame din listă și apoi utilizați metoda to_csv() , după cum se arată mai jos:

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

Dacă datele dvs. includ caractere non-ASCII, poate fi necesar să setați parametrul de codificare la o valoare adecvată, cum ar fi „utf-8”.

2. Cum să utilizați NumPy pentru a salva liste în CSV

O altă bibliotecă care merită luată în considerare este NumPy , care oferă suport pentru lucrul cu matrice și matrice.

NumPy oferă funcția np.savetxt() ca o metodă convenabilă de salvare a datelor într-un fișier CSV.

Iată un exemplu care arată cum să salvezi o listă într-un fișier CSV folosind 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='')

Iată o defalcare a parametrilor savetxt() :

  • delimitator: specifică separatorul de câmp

  • parametru fmt: indică formatul datelor care sunt salvate

  • %s: substituent pentru valorile șirului

  • antet : o listă de anteturi de coloană

  • comentarii: controlează caracterele care încep comentariile în fișierul de ieșire.

Cum să curățați datele înainte de a scrie în fișier

Este o idee bună să vă curățați datele înainte de a le scrie în fișiere text. Acest videoclip vă va oferi tehnicile de care aveți nevoie:

Gânduri finale

Scrierea unei liste într-un fișier CSV în Python este o modalitate simplă și eficientă de a stoca și partaja date. Ați învățat cum să utilizați modulul CSV încorporat din Python pentru a efectua această sarcină.

Acum sunteți familiarizat cu crearea unei liste Python, importarea modulului csv , deschiderea unui fișier CSV și utilizarea csv.writer pentru a scrie lista în fișierul CSV.

Ați învățat, de asemenea, scenariile mai complexe de scriere a unei liste de liste într-un fișier CSV, care vă permite să stocați date tabelare.

Nu uitați, ca toate lucrurile în programare, practica face perfectă. Deci, luați aceste cunoștințe noi, jucați-vă cu ele și vedeți cum funcționează cu diferite seturi de date și nevoi ale proiectelor.

Acesta este doar vârful aisbergului Python. Mai sunt multe de explorat în vasta lume a lui Python, așa că nu te opri aici. Dar pentru astăzi, dă-ți o palmă pe spate. Ați îmblânzit cu succes bestia conversiei listă în CSV!


Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Cum să salvați și să încărcați un fișier RDS în R

Cum să salvați și să încărcați un fișier RDS în R

Veți învăța cum să salvați și să încărcați obiecte dintr-un fișier .rds în R. Acest blog va trata, de asemenea, cum să importați obiecte din R în LuckyTemplates.

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

În acest tutorial despre limbajul de codare DAX, aflați cum să utilizați funcția GENERATE și cum să schimbați în mod dinamic titlul unei măsuri.

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Acest tutorial va acoperi cum să utilizați tehnica Multi Threaded Dynamic Visuals pentru a crea informații din vizualizările dinamice de date din rapoartele dvs.

Introducere la filtrarea contextului în LuckyTemplates

Introducere la filtrarea contextului în LuckyTemplates

În acest articol, voi trece prin contextul filtrului. Contextul de filtrare este unul dintre subiectele majore despre care orice utilizator LuckyTemplates ar trebui să învețe inițial.

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Vreau să arăt cum serviciul online LuckyTemplates Apps poate ajuta la gestionarea diferitelor rapoarte și informații generate din diverse surse.

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Aflați cum să vă calculați modificările marjei de profit folosind tehnici precum măsurarea ramificării și combinarea formulelor DAX în LuckyTemplates.

Idei de materializare pentru cache-urile de date în DAX Studio

Idei de materializare pentru cache-urile de date în DAX Studio

Acest tutorial va discuta despre ideile de materializare a cache-urilor de date și despre modul în care acestea afectează performanța DAX-ului în furnizarea de rezultate.

Raportare de afaceri folosind LuckyTemplates

Raportare de afaceri folosind LuckyTemplates

Dacă încă utilizați Excel până acum, atunci acesta este cel mai bun moment pentru a începe să utilizați LuckyTemplates pentru nevoile dvs. de raportare a afacerii.

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți