csv ಮೊಡ್ಯೂಲ್
CSV (Comma-Separated Values) ಫೈಲ್ಗಳು ಟೇಬಲ್ ರೂಪದ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಲು ಬಳಸುವ ಒಂದು ಸಾಮಾನ್ಯ ಟೆಕ್ಸ್ಟ್ ಫೈಲ್ ಫಾರ್ಮ್ಯಾಟ್ ಆಗಿದೆ. ಪೈಥಾನ್ನ ಅಂತರ್ನಿರ್ಮಿತ csv ಮೊಡ್ಯೂಲ್, CSV ಫೈಲ್ಗಳನ್ನು ಸುಲಭವಾಗಿ ಓದಲು ಮತ್ತು ಬರೆಯಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
ಇದು ಸ್ಪ್ರೆಡ್ಶೀಟ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು (ಉದಾ: Microsoft Excel, Google Sheets) ಮತ್ತು ಡೇಟಾಬೇಸ್ಗಳೊಂದಿಗೆ ಡೇಟಾವನ್ನು ವಿನಿಮಯ ಮಾಡಿಕೊಳ್ಳಲು ಅತ್ಯಂತ ಉಪಯುಕ್ತ.
CSV ಫೈಲ್ಗೆ ಬರೆಯುವುದು (csv.writer)
csv.writer ಆಬ್ಜೆಕ್ಟ್, ಡೇಟಾದ ಲಿಸ್ಟ್ಗಳನ್ನು (ಸಾಲುಗಳನ್ನು) CSV ಫೈಲ್ಗೆ ಬರೆಯಲು ಮೆಥಡ್ಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ.
writer.writerow(row): ಒಂದು ಸಾಲನ್ನು (ಲಿಸ್ಟ್) ಬರೆಯುತ್ತದೆ.writer.writerows(rows): ಅನೇಕ ಸಾಲುಗಳನ್ನು (ಲಿಸ್ಟ್ಗಳ ಲಿಸ್ಟ್) ಬರೆಯುತ್ತದೆ.
import csv
# ಡೇಟಾ
student_data = [
['ಹೆಸರು', 'ವಯಸ್ಸು', 'ನಗರ'],
['ರವಿಕಿರಣ', 25, 'ಹಾಸನ'],
['ನಿಶ್ಕಲಾ', 28, 'ಚನ್ನರಾಯಪಟ್ಟಣ']
]
# newline='' ಬಳಸುವುದು ವಿಂಡೋಸ್ನಲ್ಲಿ ಹೆಚ್ಚುವರಿ ಖಾಲಿ ಸಾಲುಗಳನ್ನು ತಪ್ಪಿಸುತ್ತದೆ
with open('students.csv', 'w', newline='', encoding='utf-8') as f:
writer = csv.writer(f)
writer.writerows(student_data)
print("'students.csv' ಫೈಲ್ ಅನ್ನು ರಚಿಸಲಾಗಿದೆ.")
CSV ಫೈಲ್ನಿಂದ ಓದುವುದು (csv.reader)
csv.reader ಆಬ್ಜೆಕ್ಟ್, CSV ಫೈಲ್ನ ಮೇಲೆ ಇಟರೇಟ್ ಮಾಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಪ್ರತಿ ಇಟರೇಶನ್ನಲ್ಲಿ, ಅದು ಒಂದು ಸಾಲನ್ನು ಕಾಲಮ್ಗಳ ಲಿಸ್ಟ್ ಆಗಿ ಹಿಂತಿರುಗಿಸುತ್ತದೆ.
import csv
try:
with open('students.csv', 'r', encoding='utf-8') as f:
reader = csv.reader(f)
# ಹೆಡರ್ ಅನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಪಡೆಯಲು
header = next(reader)
print(f"ಹೆಡರ್ಗಳು: {header}")
# ಉಳಿದ ಸಾಲುಗಳನ್ನು ಓದುವುದು
for row in reader:
print(row)
except FileNotFoundError:
print("ದೋಷ: 'students.csv' ಫೈಲ್ ಕಂಡುಬಂದಿಲ್ಲ.")
ಡಿಕ್ಷನರಿಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವುದು (DictReader ಮತ್ತು DictWriter)
ಪ್ರತಿ ಸಾಲನ್ನು ಲಿಸ್ಟ್ ಬದಲು ಡಿಕ್ಷನರಿಯಾಗಿ ನಿರ್ವಹಿಸುವುದು ಕೋಡ್ ಅನ್ನು ಹೆಚ್ಚು ಓದಬಲ್ಲಂತೆ ಮಾಡುತ್ತದೆ.
csv.DictWriter: ಡಿಕ್ಷನರಿಗಳ ಲಿಸ್ಟ್ ಅನ್ನು CSV ಫೈಲ್ಗೆ ಬರೆಯುತ್ತದೆ.csv.DictReader: CSV ಫೈಲ್ನ ಪ್ರತಿ ಸಾಲನ್ನು ಡಿಕ್ಷನರಿಯಾಗಿ ಓದುತ್ತದೆ.
import csv
# DictWriter ಉದಾಹರಣೆ
with open('students_dict.csv', 'w', newline='', encoding='utf-8') as f:
fieldnames = ['ಹೆಸರು', 'ನಗರ']
writer = csv.DictWriter(f, fieldnames=fieldnames)
writer.writeheader() # ಹೆಡರ್ ಬರೆಯುತ್ತದೆ
writer.writerow({'ಹೆಸರು': 'ಗೋವರ್ಧನ್', 'ನಗರ': 'ಬೆಂಗಳೂರು'})
writer.writerow({'ಹೆಸರು': 'ಮಹಾಲಕ್ಷ್ಮಿ', 'ನಗರ': 'ಕಿಕ್ಕೇರಿ'})
# DictReader ಉದಾಹರಣೆ
with open('students_dict.csv', 'r', encoding='utf-8') as f:
reader = csv.DictReader(f)
for row_dict in reader:
print(f"ಹೆಸರು: {row_dict['ಹೆಸರು']}, ನಗರ: {row_dict['ನಗರ']}")
csv ಮೊಡ್ಯೂಲ್, ಡೇಟಾ ವಿಶ್ಲೇಷಣೆ, ವರದಿ ತಯಾರಿಕೆ, ಮತ್ತು ಡೇಟಾ ವಲಸೆಯಂತಹ ಕಾರ್ಯಗಳಲ್ಲಿ ಪ್ರಮುಖ ಪಾತ್ರ ವಹಿಸುತ್ತದೆ.