Đọ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. 

Đọc file CSV trong Python

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!

Ngày:23/10/2020 Chia sẻ bởi:Ngoan

CÓ THỂ BẠN QUAN TÂM