با استفاده از io.BufferedWriter در پایتون، برنامه‌ای بنویسید که یک لیست از رکوردهای نمونه (name, age, score) را به فرمت CSV در فایلی به نام data.csv بنویسد.

3.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:35

0.0

از ماژول io و کلاس BufferedWriter برای نوشتن باینری استفاده کنید: فایل را با حالت 'wb' باز کنید، یک BufferedWriter روی آن بسازید و ابتدا هدر CSV سپس هر رکورد را به صورت رشته‌ای با جداکننده کاما بسازید و با encode('utf-8') به بایت تبدیل کنید، سپس با متد write بنویسید؛ در پایان flush و بستن با context manager را فراموش نکنید. نکات: BufferedWriter تنها بایت می‌پذیرد، پس از join و f-string برای ساخت خطوط CSV و از '\n'.encode() برای شکست خطوط استفاده کنید تا با ابزارهای داده‌کاوی و اسکریپت‌های خودکار سازگار باشد.

توسط پژوهشگر در 221 روز قبل ساعت 01:35
دسته بندی ها: Python Python for beginner
arman در 221 روز قبل ساعت 12:45

این رویکرد از io.BufferedWriter برای نوشتن بایت‌های UTF-8 استفاده می‌کند و هر خط CSV را به‌صورت رشته‌ای با جداکننده کاما ساخته و به بایت تبدیل می‌کند. اگر مقادیر فیلدها شامل کاما یا نقل قول باشند، باید escaping مناسب انجام داد تا خروجی CSV معتبر بماند (در غیر این صورت استفاده از csv.writer ساده‌تر و امن‌تر است). با استفاده از context manager فایل به‌طور خودکار باز و بسته می‌شود و پس از هر خط با '\n'.encode() پایان‌بندی می‌شود. به‌وسیلهٔ این شیوه، حتماً به escaping و سازگاری خروجی CSV با ابزارهای داده‌کاوی توجه کنید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری