Qoraalkan waxaan ku eegi doonaa sida loo akhriyo loona qoro faylasha CSV Python. Tusaalooyinka waxay adeegsadaan moduleka CSV iyo Pandas.
Tusaalahan koodhku wuxuu akhrinayaa fayl loogu magac daray orders.csv
iyo wareegyada loo maro xogta:
import csv f = open('orders.csv', 'rt') orders = csv.reader(f) for order in orders:
print(order) f.close()
Soo saarida amarrada.csv:
['OrderID', 'CustomerID', 'OrderDate'] ['10248', '4', '10/02/2020'] ['10249', '2', '10/02/2020'] ['10250', '7', '10/02/2020']
Adeegsiga DictReader
Habka saf kasta oo ka mid ah faylka CSV waxaa loo metelaa sida safka qaamuuska, iyadoo cinwaanka cinwaanka uu yahay furaha
import csv orders = csv.DictReader(open('orders.csv')) for order in orders:
print(order)
Soo saarida amarrada.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'}
Si loo isticmaalo Pandas, waxaan marka hore u baahanahay inaan rakibo maktabadda Pandas.
Si aad u rakibto, amar amarkan: pip3 install pandas
.
import pandas orders = pandas.read_csv('orders.csv') print(orders)
Soo saarida amarrada.csv:
OrderID CustomerID OrderDate 10248
4
10/02/2020 10249
2
10/02/2020 10250
7
10/02/2020
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)
Soo saarida newOrders.csv:
OrderID,CustomerID,OrderDate 10251,5,11/02/2020 10252,1,11/02/2020 10253,8,11/02/2020
Habka caadiga ah marka wax loo qorayo faylka csv waa 'w'
. Haddii aan rabno inaan ku lifaaqno xogta faylka jira ee CSV waa inaan isticmaalnaa habka lifaaqa, tusaale ahaan. 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)
Soo saarida 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
N.B Safka ugu horreeya waxaa loo isticmaalaa inuu yahay madaxa safka
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'])
Soo saarida amarrada.csv:
OrderID,CustomerID,OrderDate 10251,6,11/02/2020 10252,9,11/02/2020 10253,5,11/02/2020
Haddii aad rabto inaad ku lifaaqdo faylka csv ee jira adoo adeegsanaya moduleka csv, waxaad u baahan tahay inaad ku gudubto 'a'
halbeegga u ah open()
habka. Waxaad sidoo kale u baahan tahay inaad ka booddo 'cinwaannada'.
Tusaale ahaan:
with open('orders.csv', 'a', newline='') as file:
order = csv.writer(file)
order.writerow(['10251', '6', '11/02/2020'])
Waxaan sidoo kale isticmaali karnaa DictWriter
habka csv
fasalka si loo abuuro loona qoro faylka 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'})
Soo saarida amarrada.csv:
OrderID,CustomerID,OrderDate 10251,7,11/02/2020 10252,3,11/02/2020 10253,1,11/02/2020