Bỏ qua điều hướng

Prompt miễn phí

Python xử lý CSV lớn theo luồng

Sinh giải pháp Python đọc CSV rất lớn theo luồng, kèm code, giải thích bộ nhớ và độ phức tạp rõ ràng.

Onter AdminCập nhật 26/09/2026 Mới · Chưa có đánh giá 0 lượt copy
CodingChatGPTCodex

Prompt dùng để làm gì?

Sinh giải pháp Python đọc CSV rất lớn theo luồng, kèm code, giải thích bộ nhớ và độ phức tạp rõ ràng.

Điền thông tin của bạn

Prompt

Bạn là kỹ sư Python chuyên xử lý dữ liệu lớn. Hãy thiết kế một giải pháp đọc và xử lý file CSV rất lớn theo kiểu streaming, không nạp toàn bộ file vào bộ nhớ. Dựa trên {{cau_truc_cot}}, hãy viết code Python phù hợp để áp dụng {{quy_tac_loc}} và tạo {{dau_ra_mong_muon}}. Nếu cần, hãy dùng generator, csv module, buffered I/O hoặc thư viện phù hợp nhưng phải ưu tiên cách tiết kiệm RAM. Khi người dùng cung cấp {{mau_du_lieu}}, hãy dùng nó để minh họa logic xử lý mà không giả định thêm cột không có trong đầu vào. Trả về: 1) code hoàn chỉnh, 2) giải thích ngắn gọn từng khối, 3) phân tích độ phức tạp thời gian, 4) ước lượng giới hạn bộ nhớ và các điểm có thể nghẽn như sort, groupby hoặc join. Nếu phát hiện yêu cầu có thể làm tăng bộ nhớ, hãy đề xuất cách thay thế theo luồng hoặc theo lô. Không viết theo kiểu đọc toàn bộ file bằng pandas nếu điều đó mâu thuẫn với yêu cầu tiết kiệm bộ nhớ.
Xem đã lưu

Input mẫu

cau_truc_cot: id, ngay, so_tien, trang_thai
quy_tac_loc: chỉ giữ dòng có trang_thai = 'done' và so_tien > 0
dau_ra_mong_muon: file CSV mới chỉ gồm id, ngay, so_tien
mau_du_lieu: 3 dòng CSV mẫu có các cột trên

Output mẫu

Code Python dùng csv.DictReader đọc từng dòng, kiểm tra trang_thai và so_tien, ghi ra file kết quả bằng csv.DictWriter; phần giải thích nêu rõ mỗi dòng được xử lý độc lập nên RAM gần như không đổi theo kích thước file; độ phức tạp O(n) thời gian và O(1) bộ nhớ phụ ngoài bộ đệm ghi.

Cách sử dụng

Điền rõ cột, điều kiện lọc và dạng kết quả. Dán prompt vào công cụ tạo mã Python, kiểm tra lại code với dữ liệu mẫu nhỏ trước, rồi xác nhận code thật sự xử lý theo luồng và không tải toàn bộ CSV vào RAM.

Giải thích cấu trúc

Role
Vai trò là kỹ sư Python hiểu dữ liệu lớn và tối ưu bộ nhớ.
Context
Bối cảnh là CSV rất lớn nên không thể đọc toàn bộ vào RAM như cách làm thông thường.
Task
Sinh code xử lý theo luồng, áp quy tắc lọc và tạo đầu ra đúng định dạng.
Constraints
Không dùng cách nạp toàn file; phải nói rõ độ phức tạp, giới hạn bộ nhớ và nút thắt tiềm ẩn.
Output
Code hoàn chỉnh kèm giải thích, phân tích hiệu năng và khuyến nghị xử lý theo lô khi cần.

Mẹo sử dụng

  • Nếu có bước sắp xếp, hãy cảnh báo vì nó thường phá vỡ tính streaming.
  • Chỉ giữ các cột cần thiết để giảm I/O và bộ nhớ.
  • Với dữ liệu phân nhóm, cân nhắc ghi tạm theo key thay vì gom toàn bộ vào dict lớn.
  • Nêu rõ kiểu dữ liệu khi chuyển đổi số hoặc ngày để tránh lỗi parse.

Nguồn và giấy phép

ONTER biên tập · original

Đánh giá prompt

Chọn số sao theo trải nghiệm của bạn. Bạn có thể sửa đánh giá sau một phút.

Prompt liên quan

Tài khoản Onter

Đăng nhập rồi tiếp tục việc đang làm.

Mở trang đăng nhập riêng nếu trình duyệt chưa hiển thị biểu mẫu.

Contact Me on Zalo