Tóm tắt: Trong hướng dẫn này, bạn sẽ học cách ghi dữ liệu vào tệp CSV bằng mô-đun csv
tích hợp.: in this tutorial, you’ll learn how to write data into a CSV file using the built-in csv
module.
Các bước để viết tệp CSV
Để ghi dữ liệu vào tệp CSV, bạn làm theo các bước sau:
- Đầu tiên, hãy mở tệp CSV để viết [chế độ
w
] bằng cách sử dụng hàmopen[]
. - Thứ hai, tạo đối tượng người viết CSV bằng cách gọi hàm
0 của mô -đun
Code language: PHP [php]import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
csv
. - Thứ ba, ghi dữ liệu vào tệp CSV bằng cách gọi phương thức
2 hoặc
Code language: PHP [php]import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
3 của đối tượng người viết CSV.
Code language: PHP [php]import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
- Cuối cùng, đóng tệp sau khi bạn hoàn thành việc viết dữ liệu cho nó.
Mã sau đây minh họa các bước trên:
Code language: Python [python]
import csv # open the file in the write mode f = open['path/to/csv_file', 'w'] # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row] # close the file f.close[]
Nó sẽ ngắn hơn nếu bạn sử dụng câu lệnh
4 để bạn không cần gọi phương thứcCode language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
5 để đóng tệp một cách rõ ràng:Code language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
Code language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
Nếu bạn xử lý các ký tự không phải ASCII, bạn cần chỉ định mã hóa ký tự trong hàm open[]
.
Sau đây minh họa cách viết các ký tự UTF-8 vào tệp CSV:
Code language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w', encoding='UTF8'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
Viết vào ví dụ về tệp CSV
Ví dụ sau đây cho thấy cách ghi dữ liệu vào tệp CSV:
Code language: PHP [php]
import csv header = ['name', 'area', 'country_code2', 'country_code3'] data = ['Afghanistan', 652090, 'AF', 'AFG'] with open['countries.csv', 'w', encoding='UTF8'] as f: writer = csv.writer[f] # write the header writer.writerow[header] # write the data writer.writerow[data]
Nếu bạn mở
7, bạn sẽ thấy một vấn đề rằng nội dung tệp có thêm dòng trống giữa hai hàng tiếp theo:Code language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
Để xóa dòng trống, bạn chuyển đối số từ khóa
8 cho hàmCode language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
open[]
như sau:Code language: PHP [php]
import csv header = ['name', 'area', 'country_code2', 'country_code3'] data = ['Afghanistan', 652090, 'AF', 'AFG'] with open['countries.csv', 'w', encoding='UTF8', newline=''] as f: writer = csv.writer[f] # write the header writer.writerow[header] # write the data writer.writerow[data]
Output:
Viết nhiều hàng vào các tệp CSV
Để ghi nhiều hàng vào tệp CSV cùng một lúc, bạn sử dụng phương thức
3 của đối tượng người viết CSV.Code language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
Sau đây sử dụng phương thức
3 để ghi nhiều hàng vào tệpCode language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
7:Code language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
Code language: PHP [php]
import csv header = ['name', 'area', 'country_code2', 'country_code3'] data = [ ['Albania', 28748, 'AL', 'ALB'], ['Algeria', 2381741, 'DZ', 'DZA'], ['American Samoa', 199, 'AS', 'ASM'], ['Andorra', 468, 'AD', 'AND'], ['Angola', 1246700, 'AO', 'AGO'] ] with open['countries.csv', 'w', encoding='UTF8', newline=''] as f: writer = csv.writer[f] # write the header writer.writerow[header] # write multiple rows writer.writerows[data]
Ghi vào các tệp CSV bằng lớp DictWriter
Nếu mỗi hàng của tệp CSV là từ điển, bạn có thể sử dụng lớp
3 của mô -đunCode language: PHP [php]
import csv # open the file in the write mode with open['path/to/csv_file', 'w', encoding='UTF8'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
csv
để viết từ điển vào tệp CSV.Ví dụ minh họa cách sử dụng lớp DictWriter để ghi dữ liệu vào tệp CSV:
Code language: PHP [php]
import csv # csv header fieldnames = ['name', 'area', 'country_code2', 'country_code3'] # csv data rows = [ {'name': 'Albania', 'area': 28748, 'country_code2': 'AL', 'country_code3': 'ALB'}, {'name': 'Algeria', 'area': 2381741, 'country_code2': 'DZ', 'country_code3': 'DZA'}, {'name': 'American Samoa', 'area': 199, 'country_code2': 'AS', 'country_code3': 'ASM'} ] with open['countries.csv', 'w', encoding='UTF8', newline=''] as f: writer = csv.DictWriter[f, fieldnames=fieldnames] writer.writeheader[] writer.writerows[rows]
Làm thế nào nó hoạt động.
- Đầu tiên, xác định các biến giữ tên trường và hàng dữ liệu của tệp CSV.
- Tiếp theo, mở tệp CSV để viết bằng cách gọi hàm
open[]
. - Sau đó, tạo một thể hiện mới của lớp
3 bằng cách chuyển đối tượng tệp [
Code language: PHP [php]import csv # open the file in the write mode with open['path/to/csv_file', 'w', encoding='UTF8'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
7] và đối số
Code language: PHP [php]import csv # open the file in the write mode with open['path/to/csv_file', 'w', encoding='UTF8'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
8 cho nó.
Code language: PHP [php]import csv # open the file in the write mode with open['path/to/csv_file', 'w', encoding='UTF8'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
- Sau đó, hãy viết tiêu đề cho tệp CSV bằng cách gọi phương thức
9.
Code language: PHP [php]import csv # open the file in the write mode with open['path/to/csv_file', 'w', encoding='UTF8'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
- Cuối cùng, ghi các hàng dữ liệu vào tệp CSV bằng phương thức
3.
Code language: PHP [php]import csv # open the file in the write mode with open['path/to/csv_file', 'w'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
Bản tóm tắt
- Sử dụng người viết CSV hoặc lớp
3 để ghi dữ liệu vào tệp CSV.
Code language: PHP [php]import csv # open the file in the write mode with open['path/to/csv_file', 'w', encoding='UTF8'] as f: # create the csv writer writer = csv.writer[f] # write a row to the csv file writer.writerow[row]
Bạn có thấy hướng dẫn này hữu ích không?