با استفاده از open (که یک TextIOWrapper برمیگرداند) یک فایل CSV را بخوانید، مقدارهای ستون مشخصی را جمعآوری و میانگین آن را محاسبه کرده و نتیجه را در یک فایل خروجی متنی بنویسید.
1.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:14 0.0
فایل ورودی را با open('input.csv', 'r', encoding='utf-8') باز کنید (شیء بازگشتی از نوع io.TextIOWrapper است)، هدر را خوانده و با csv.reader یا تقسیم خطوط به کاما، اندیس ستون موردنظر را پیدا کنید. سپس با حلقه روی بقیهٔ سطرها مقدارهای عددی آن ستون را استخراج (با strip و تبدیل به float در صورت امکان) و میانگین را محاسبه کنید. نتیجه را با open('output.txt', 'w', encoding='utf-8') باز کرده و به صورت متن بنویسید. نکات: از with برای بستهشدن خودکار فایلها استفاده کنید، مقادیر خالی یا نامعتبر را نادیده بگیرید و در صورت نیاز از ماژول csv برای پایداری با فرمتهای مختلف استفاده کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای خواندن یک CSV با پایداری بالا، استفاده از csv.DictReader به جای دسترسی به اندیسها پیشنهاد میشود تا با نام ستونها کار کنید و از حساسیت به ترتیب ستونها جلوگیری شود. قبل از تبدیل به float، مقادیر خالی یا نامعتبر را با شرط وجود مقدار یا بلوک try/except نادیده بگیرید و تنها مقادیر معتبر را در جمع و شمارش لحاظ کنید. با استفاده از with open(..., encoding='utf-8', newline=''), مدیریت فایلها بهطور امن انجام میشود و از مشکلات مربوط به newline در csv جلوگیری میکند. در پایان میانگین را بهوسیلهٔ تقسیم جمع مقادیر معتبر بر تعداد آنها محاسبه کرده و نتیجه را در یک فایل خروجی متنی بنویسید، و در صورت لزوم فرمت خروجی را (مثلاً دو رقم اعشار) تنظیم کنید.
گزارش