Nội dung chính
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.
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.
Đọ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.
Đọ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.