Làm cách nào để gọi tệp csv trong python?

Tệp CSV là một loại tệp văn bản thuần túy đơn giản sử dụng cấu trúc cụ thể để sắp xếp dữ liệu dạng bảng. Định dạng tiêu chuẩn của tệp CSV được xác định bởi dữ liệu hàng và cột trong đó một dòng mới kết thúc mỗi hàng để bắt đầu hàng tiếp theo và mỗi cột được phân tách bằng dấu phẩy trong hàng

CSV là một định dạng phổ biến để trao đổi dữ liệu vì nó nhỏ gọn, đơn giản và tổng quát. Nhiều dịch vụ trực tuyến cho phép người dùng của họ xuất dữ liệu dạng bảng từ trang web thành tệp CSV. Tệp CSV sẽ mở trong Excel và gần như tất cả các cơ sở dữ liệu đều có công cụ cho phép nhập từ tệp CSV

Trong hướng dẫn này, bạn sẽ học

  • Tệp CSV là gì?
  • Tệp mẫu CSV
  • Mô-đun CSV Python
  • Chức năng mô-đun CSV
  • Cách đọc tệp CSV bằng Python
  • Cách đọc tệp CSV thành Từ điển bằng Python
  • Cách viết tệp CSV bằng Python
  • Đọc tệp CSV bằng Pandas
  • Viết tệp CSV bằng Pandas

Tệp mẫu CSV

Dữ liệu ở dạng bảng còn được gọi là CSV (giá trị được phân tách bằng dấu phẩy) – nghĩa đen là “giá trị được phân tách bằng dấu phẩy. Đây là một định dạng văn bản dành cho việc trình bày dữ liệu dạng bảng. Mỗi dòng của tệp là một dòng của bảng. Các giá trị của các cột riêng lẻ được phân tách bằng ký hiệu phân cách – dấu phẩy (,), dấu chấm phẩy (;) hoặc ký hiệu khác. CSV có thể dễ dàng đọc và xử lý bằng Python

Xem xét bảng sau

Bảng dữ liệu

Ngôn ngữ lập trìnhDesigned byAppearedExtensionPythonGuido van Rossum1991. pyJavaJames Gosling1995. javaC++Bjarne Stroustrup1983. cpp

Bạn có thể đại diện cho bảng này trong csv như bên dưới

Dữ liệu CSV

Ngôn ngữ lập trình, Được thiết kế bởi, Đã xuất hiện, Phần mở rộng

Trăn, Guido van Rossum, 1991,. py

Java, James Gosling, 1995,. java

C++, Bjarne Stroustrup, 1983,. cpp

Như bạn có thể thấy mỗi hàng là một dòng mới và mỗi cột được phân tách bằng dấu phẩy. Đây là một ví dụ về cách tệp CSV trông như thế nào

Tải xuống dữ liệu CSV

Mô-đun CSV Python

Python cung cấp mô-đun CSV để xử lý các tệp CSV. Để đọc/ghi dữ liệu, bạn cần lặp qua các hàng của CSV. Bạn cần sử dụng phương pháp tách để lấy dữ liệu từ các cột được chỉ định

Chức năng mô-đun CSV

Trong tài liệu mô-đun CSV, bạn có thể tìm thấy các chức năng sau

  • csv. field_size_limit – trả về kích thước trường tối đa
  • csv. get_dialect – lấy phương ngữ được liên kết với tên
  • csv. list_dialects – hiển thị tất cả các phương ngữ đã đăng ký
  • csv. trình đọc – đọc dữ liệu từ tệp csv
  • csv. register_dialect – liên kết phương ngữ với tên
  • csv. nhà văn – ghi dữ liệu vào tệp csv
  • csv. unregister_dialect – xóa phương ngữ được liên kết với tên đăng ký phương ngữ
  • csv. QUOTE_ALL – Trích dẫn mọi thứ, bất kể loại nào
  • csv. QUOTE_MINIMAL – Trường trích dẫn có ký tự đặc biệt
  • csv. QUOTE_NONNUMERIC – Trích dẫn tất cả các trường không phải là giá trị số
  • csv. QUOTE_NONE – Không trích dẫn bất cứ điều gì trong đầu ra

Trong hướng dẫn này, chúng tôi sẽ chỉ tập trung vào các chức năng của trình đọc và trình ghi cho phép bạn chỉnh sửa, sửa đổi và thao tác dữ liệu trong tệp CSV

Cách đọc tệp CSV bằng Python

Dưới đây là các bước để đọc tệp CSV bằng Python

Bước 1) Để đọc dữ liệu từ tệp CSV, bạn phải sử dụng chức năng trình đọc để tạo đối tượng trình đọc

Chức năng đọc được phát triển để lấy từng hàng của tệp và tạo danh sách tất cả các cột. Sau đó, bạn phải chọn cột bạn muốn dữ liệu biến cho

Nghe có vẻ phức tạp hơn nhiều so với thực tế. Hãy xem mã Python này để đọc tệp CSV và chúng ta sẽ thấy rằng làm việc với tệp csv không quá khó

#import necessary modules
import csv
with open('X:\data.csv','rt')as f:
  data = csv.reader(f)
  for row in data:
        print(row)

Bước 2) Khi bạn thực hiện chương trình trên, đầu ra sẽ là

['Programming language; Designed by; Appeared; Extension']
['Python; Guido van Rossum; 1991; .py']
['Java; James Gosling; 1995; .java']
['C++; Bjarne Stroustrup;1983;.cpp']

Cách đọc tệp CSV thành Từ điển bằng Python

Bạn cũng có thể sử dụng DictReader để đọc tệp CSV. Kết quả được hiểu là một từ điển trong đó hàng tiêu đề là khóa và các hàng khác là giá trị

Hãy xem xét đoạn mã sau

#import necessary modules
import csv

reader = csv.DictReader(open("file2.csv"))
for raw in reader:
    print(raw)

Kết quả của mã này là

OrderedDict([('Programming language', 'Python'), ('Designed by', 'Guido van Rossum'), (' Appeared', ' 1991'), (' Extension', ' .py')])
OrderedDict([('Programming language', 'Java'), ('Designed by', 'James Gosling'), (' Appeared', ' 1995'), (' Extension', ' .java')])
OrderedDict([('Programming language', 'C++'), ('Designed by', ' Bjarne Stroustrup'), (' Appeared', ' 1985'), (' Extension', ' .cpp')])

Làm cách nào để gọi tệp csv trong python?

Và cách này để đọc dữ liệu từ tệp CSV dễ dàng hơn nhiều so với phương pháp trước đó. Tuy nhiên, đây không phải là cách tốt nhất để đọc dữ liệu

Cách viết tệp CSV bằng Python

Đây là cách viết tệp CSV bằng Python

Khi bạn có một bộ dữ liệu mà bạn muốn lưu trữ trong tệp CSV, bạn phải sử dụng hàm writer(). Để lặp lại dữ liệu qua các hàng (dòng), bạn phải sử dụng hàm writerow()

Xem xét ví dụ sau. Chúng tôi ghi dữ liệu vào một tập tin “writeData. csv” trong đó dấu phân cách là dấu nháy đơn

#import necessary modules
import csv

with open('X:\writeData.csv', mode='w') as file:
    writer = csv.writer(file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)

    #way to write to csv file
    writer.writerow(['Programming language', 'Designed by', 'Appeared', 'Extension'])
    writer.writerow(['Python', 'Guido van Rossum', '1991', '.py'])
    writer.writerow(['Java', 'James Gosling', '1995', '.java'])
    writer.writerow(['C++', 'Bjarne Stroustrup', '1985', '.cpp'])

Kết quả trong tệp csv là

Programming language, Designed by, Appeared, Extension 
Python, Guido van Rossum, 1991, .py
Java, James Gosling, 1995, .java
C++, Bjarne Stroustrup,1983,.cpp

Làm cách nào để gọi tệp csv trong python?

Đọc tệp CSV bằng Pandas

Pandas là một thư viện mã nguồn mở cho phép bạn nhập CSV bằng Python và thực hiện thao tác dữ liệu. Pandas cung cấp một cách dễ dàng để tạo, thao tác và xóa dữ liệu

You must install pandas library with command pip install pandas. In Windows, you will execute this command in Command Prompt while in Linux in the Terminal.

Đọc CSV thành DataFrame của gấu trúc rất nhanh chóng và dễ dàng

#import necessary modules
import pandas
result = pandas.read_csv('X:\data.csv')
print(result)

Kết quả của ví dụ Pandas CSV đã đọc

Programming language, Designed by, Appeared, Extension 
0    Python, Guido van Rossum, 1991, .py
1    Java, James Gosling, 1995, .java
2    C++, Bjarne Stroustrup,1983,.cpp

Thư viện rất hữu ích. Chỉ trong ba dòng mã, bạn có kết quả giống như trước đó. Pandas biết rằng dòng đầu tiên của CSV chứa tên cột và nó sẽ tự động sử dụng chúng

Viết tệp CSV bằng Pandas

Ghi vào tệp CSV bằng Pandas dễ dàng như đọc. Ở đây bạn có thể thuyết phục trong đó. Trước tiên, bạn phải tạo DataFrame dựa trên mã Python ghi vào mã CSV sau

________số 8

Đây là đầu ra

Programming language, Designed by, Appeared, Extension
0    Python, Guido van Rossum, 1991, .py
1    Java, James Gosling, 1995, .java
2    C++, Bjarne Stroustrup,1983,.cpp

Và tệp CSV được tạo tại vị trí đã chỉ định

Làm cách nào để gọi tệp csv trong python?

Sự kết luận

Vì vậy, bây giờ bạn đã biết cách sử dụng phương thức 'csv' cũng như đọc và ghi dữ liệu ở định dạng CSV. Các tệp CSV được sử dụng rộng rãi trong các ứng dụng phần mềm vì chúng dễ đọc và dễ quản lý, đồng thời kích thước nhỏ giúp chúng xử lý và truyền tải tương đối nhanh

Mô-đun csv cung cấp các hàm và lớp khác nhau cho phép bạn đọc và viết dễ dàng. Bạn có thể xem tài liệu Python chính thức và tìm một số mẹo và mô-đun thú vị hơn. CSV là cách tốt nhất để lưu, xem và gửi dữ liệu. Trên thực tế, nó không quá khó để học như lúc đầu. Nhưng với một chút luyện tập, bạn sẽ thành thạo nó

Pandas là một giải pháp thay thế tuyệt vời để đọc các tệp CSV

Ngoài ra, có nhiều cách khác để phân tích tệp văn bản bằng các thư viện như ANTLR, PLY và PlyPlus. Tất cả chúng đều có thể xử lý phân tích cú pháp hạng nặng và nếu thao tác Chuỗi đơn giản không hoạt động, thì có các biểu thức chính quy mà bạn có thể sử dụng

Lệnh nào đọc tệp CSV trong Python?

Việc đọc từ tệp CSV được thực hiện bằng cách sử dụng đối tượng trình đọc . Tệp CSV được mở dưới dạng tệp văn bản với hàm open() tích hợp sẵn của Python, hàm này trả về một đối tượng tệp.

Python xử lý các tệp CSV như thế nào?

Để ghi vào tệp CSV bằng Python, chúng ta có thể sử dụng csv. hàm write() . tệp csv. hàm writer() trả về một đối tượng nhà văn chuyển đổi dữ liệu của người dùng thành một chuỗi được phân tách.