Tôi đang cố gắng sử dụng Python 3.2 trên máy tính Windows để viết một tệp CSV đơn giản, tuy nhiên tôi không có may mắn. Từ csv module documentation for Python 3.2:Python3: viết các tệp csv
>>> import csv
>>> spamWriter = csv.writer(open('eggs.csv', 'w'), delimiter=' ',
... quotechar='|', quoting=csv.QUOTE_MINIMAL)
>>> spamWriter.writerow(['Spam'] * 5 + ['Baked Beans'])
>>> spamWriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])
tạo ra một tập tin với mỗi dòng được kết thúc bằng chuỗi byte \r\r\n
, vì vậy nó trông giống như mỗi dòng có thêm một dòng trống khi bạn mở nó với, ví dụ, MS Excel. Đây không phải là "tệp CSV".
Lưu ý, nếu tôi thử same example for Python 2.7 bằng Python 3.2 (nơi sự khác biệt lớn là 'w'
vs 'wb'
cho chế độ tập tin), tôi nhận được một lỗi khi tôi thử spamWriter.writerow
:
Traceback (most recent call last): File "", line 1, in TypeError: 'str' does not support the buffer interface
Làm thế nào để viết một tệp CSV đơn giản từ Python 3.2 trên máy tính Windows?
Sự cố dường như đặc trưng cho Windows . Hoạt động tốt trên Linux. – phihag