Đọc file CSV trong Python
File CSV trong Python là gì? Đọc file như thế nào? Mời bạn đọc cùng eLib.VN tìm hiểu qua bài viết dưới đây.
Mục lục nội dung
1. File CSV
Một csv là viết tắt của (comma separated values) được định nghĩa là định dạng tệp đơn giản sử dụng cấu trúc cụ thể để sắp xếp dữ liệu dạng bảng. Nó lưu trữ dữ liệu dạng bảng như bảng tính hoặc cơ sở dữ liệu bằng văn bản thuần túy và có định dạng chung để trao đổi dữ liệu. Tệp csv được mở bằng excel và dữ liệu hàng và cột xác định định dạng chuẩn.
2. Các hàm của module CSV trong Python
Công việc mô-đun CSV được sử dụng để xử lý các tệp CSV để đọc ghi và nhận dữ liệu từ các cột được chỉ định. Có nhiều loại hàm CSV khác nhau, như sau:
- csv.field_size_limit - Nó trả về kích thước max của trường hiện tại được cho phép bởi parser.
- csv.get_dialect - Trả về dialect liên kết đến tên.
- csv.list_dialects - Trả về tên của tất cả các dialect đã đăng ký.
- csv.reader - Đọc dữ liệu từ tệp csv.
- csv.register_dialect - Nó liên kết dialect với một tên. Tên phải là một chuỗi hoặc một đối tượng Unicode.
- csv.writer - Ghi dữ liệu vào tệp csv.
- csv.unregister_dialect - Nó xóa dialect được liên kết với tên từ sổ đăng ký dialect. Nếu tên không phải là tên dialect đã đăng ký, thì lỗi sẽ được đưa ra.
- csv.QUOTE_ALL - Nó hướng dẫn đối tượng writer trích dẫn tất cả các trường. csv.QUOTE_MINIMAL - Nó hướng dẫn đối tượng writer chỉ trích dẫn những trường có chứa các ký tự đặc biệt như dấu ngoặc kép, dấu phân cách, v.v.
- csv.QUOTE_NONNUMERIC - Nó hướng dẫn đối tượng writer trích dẫn tất cả các trường không phải là số.
- csv.QUOTE_NONE - Nó hướng dẫn đối tượng writer không bao giờ trích dẫn các trường.
3. Đọc file CSV trong Python
Trong Python, mô-đun csv.reader() được sử dụng để đọc tệp csv. Nó đọc từng hàng của file và tạo một danh sách tất cả các cột.
Ví dụ, tạo một file csv có nội dung như sau:
name,department,birthday month
Parker,Accounting,November
Smith,IT,October
Chương trình sau độc file csv:
import csv
with open('D:/test/csv_demo.csv') as csv_file:
csv_reader = csv.reader(csv_file, delimiter=',')
line_count = 0
for row in csv_reader:
if line_count == 0:
print(f'Tên các cột là: {", ".join(row)}')
line_count += 1
else:
print(f'\t{row[0]} làm việc trong {row[1]}, và được sinh ra tháng {row[2]}.')
line_count += 1
print(f'Đã đọc {line_count} lines.')
Kết quả:
Tên các cột là: name, department, birthday month
Parker làm việc trong Accounting, và được sinh ra tháng November.
Smith làm việc trong IT, và được sinh ra tháng October.
Đã đọc 3 lines.
4. Đọc file CSV trong Python sử dụng Dictionary
Chương trình sau độc file csv:
import csv
with open('D:/test/csv_demo.csv') as csv_file:
csv_reader = csv.DictReader(csv_file, delimiter=',')
line_count = 0
for row in csv_reader:
if line_count == 0:
print(f'Tên các cột là: {", ".join(row)}')
line_count += 1
print(f'\t{row["name"]} làm việc trong {row["department"]}, và được sinh ra tháng {row["birthday month"]}.')
line_count += 1
print(f'Đã đọc {line_count} lines.')
Kết quả:
Tên các cột là: name, department, birthday month
Parker làm việc trong Accounting, và được sinh ra tháng November.
Smith làm việc trong IT, và được sinh ra tháng October.
Đã đọc 3 lines.
Trên đây là bài viết của eLib.VN về Đọc file CSV trong Python. Để nắm rõ hơn, chúng tôi khuyên bạn nên đọc thật kỹ, thực hành lại các ví dụ. Chúc các bạn thành công!
Tham khảo thêm
- doc Cài đặt Python
- doc Chương trình Hello World trong Python
- doc Cú pháp Python cơ bản
- doc Biến và kiểu dữ liệu trong Python
- doc Toán tử trong Python
- doc Tham số dòng lệnh trong Python
- doc Comment trong Python