Karanta Python Rubuta Fayil CSV

A cikin wannan rubutun zamu duba yadda ake karantawa da rubuta fayilolin CSV a Python. Misalan suna amfani da tsarin CSV da Pandas.



Python Karanta Fayil CSV Ta Amfani da Module ɗin CSV

Wannan lambar misali tana karanta fayil mai suna orders.csv da madaukai ta hanyar bayanan:

import csv f = open('orders.csv', 'rt') orders = csv.reader(f) for order in orders:
print(order) f.close()

Fitar da oda.csv:


['OrderID', 'CustomerID', 'OrderDate'] ['10248', '4', '10/02/2020'] ['10249', '2', '10/02/2020'] ['10250', '7', '10/02/2020']

Karanta Fayil ɗin CSV azaman Kamus

Amfani da DictReader Hanyar kowane layi a cikin fayil ɗin CSV an wakilta azaman jere a cikin ƙamus, tare da taken shafi yana maɓallin.

import csv orders = csv.DictReader(open('orders.csv')) for order in orders:
print(order)

Fitar da oda.csv:


{'OrderID': '10248', 'CustomerID': '4', 'OrderDate': '10/02/2020'} {'OrderID': '10249', 'CustomerID': '2', 'OrderDate': '10/02/2020'} {'OrderID': '10250', 'CustomerID': '7', 'OrderDate': '10/02/2020'}

Karanta Fayil ɗin CSV Ta Amfani da Pandas

Don amfani da Pandas, da farko muna buƙatar shigar da laburaren Pandas.

Don shigarwa, gudanar da wannan umarnin: pip3 install pandas.

import pandas orders = pandas.read_csv('orders.csv') print(orders)

Fitar da oda.csv:

OrderID CustomerID OrderDate 10248

4
10/02/2020 10249

2
10/02/2020 10250

7
10/02/2020


Python Rubuta CSV Ta Amfani da Pandas

from pandas import DataFrame import pandas as pd order = pd.DataFrame({'OrderID': ['10251', '10252', '10253'],



'CustomerID': ['5', '1', '8'],



'OrderDate': ['11/02/2020', '11/02/2020', '11/02/2020']}) order.to_csv('newOrders.csv', index=False)

Fitarwa na newOrders.csv:


OrderID,CustomerID,OrderDate 10251,5,11/02/2020 10252,1,11/02/2020 10253,8,11/02/2020

Endara Bayani Ga Fayil ɗin CSV

Yanayin tsoho yayin rubutu zuwa fayil csv shine 'w'. Idan muna son sanya bayanai zuwa fayil ɗin CSV da yake akwai dole muyi amfani da yanayin ƙarawa, misali. mode='a'

from pandas import DataFrame import pandas as pd order = pd.DataFrame({'OrderID': ['10254'],



'CustomerID': ['3'],



'OrderDate': ['11/02/2020']}) order.to_csv('newOrders.csv', mode='a', index=False, header=False)

Fitarwa na newOrders.csv:

OrderID,CustomerID,OrderDate 10251,5,11/02/2020 10252,1,11/02/2020 10253,8,11/02/2020 10254,3,11/02/2020

Rubuta Python Rubuta CSV Ta amfani da Module ɗin CSV

N.B Ana amfani da jere na farko azaman rubutun shafi

import csv with open('orders.csv', 'w', newline='') as file:
order = csv.writer(file)
order.writerow(['OrderID', 'CustomerID', 'OrderDate'])
order.writerow(['10251', '6', '11/02/2020'])
order.writerow(['10252', '9', '11/02/2020'])
order.writerow(['10253', '5', '11/02/2020'])

Fitar da oda.csv:


OrderID,CustomerID,OrderDate 10251,6,11/02/2020 10252,9,11/02/2020 10253,5,11/02/2020

Idan kanaso ka lika wa fayil din csv da ake amfani da shi ta hanyar amfani da csv module, akwai bukatar ka shigo cikin siga ga 'a' hanya. Hakanan kuna buƙatar tsallake 'taken'.

Misali:

open()

Rubuta Fayil ɗin CSV tare da DictWriter

Hakanan zamu iya amfani da with open('orders.csv', 'a', newline='') as file:
order = csv.writer(file)
order.writerow(['10251', '6', '11/02/2020'])
hanyar DictWriter aji don ƙirƙirar da rubuta fayil ɗin CSV.

csv

Fitar da oda.csv:


import csv with open('orders.csv', 'w', newline='') as file:
fieldnames = ['OrderID', 'CustomerID', 'OrderDate']
order = csv.DictWriter(file, fieldnames=fieldnames)
order.writeheader()
order.writerow({'OrderID': '10251', 'CustomerID': 7, 'OrderDate': '11/02/2020'})
order.writerow({'OrderID': '10252', 'CustomerID': 3, 'OrderDate': '11/02/2020'})
order.writerow({'OrderID': '10253', 'CustomerID': 1, 'OrderDate': '11/02/2020'})