sinamand07

محاسبه معدل از طریق csv در پایتون

sinamand07 ۱۳۹۹/۰۳/۲۳ زبان برنامه‌نویسی پایتون

در این پروژه شما باید برنامه ایی بنویسید که نمرات افراد مختلف را از یک فایل csv بخواند ومحاسبات زیر را روی نمرات انجام داده و مقادیر حاصل را در یک فایل ذخیره کند

در این پروژه شما ۵ task مختلف را باید پیاده سازی کنید. نمونه ی فایل source.py که باید برای سابمیت باید استفاده کنید در پایین صفحه وجود دارد (گزینه دانلود فایل) برای دانلود فایل روی این گزینه کلیک کنید.

به هیچ وجه اسم تابع ها را عوض نکنید و همه‌ی کدهایی که می خواهید بزنید را در همان def ها پیاده‌سازی کنید (خارج از def ها کدی نگذارید فقط به جز import کردن کتابخانه ها که همان ابتدای فایل قرار دهید)(برای میانگین گرفتن فقط از متد mean استفاده کنید (این متد از کتابخانه‌ی statistics در فایل زیر import شده است. )) (هیچ کدام از مقدار ها رند نشوند ) (تمام کتابخانه هایی که قصد import کردنشان را دارید فقط یکبار در ابتدای فایل و خارج از def ها قرار دهید و در def ها import نکنید) و به ازای هر task تابع مربوطه را کامل کنید و سپس این فایل را حتما با نام (source.py) و حتما به صورت zip دربیاورید (rar نباشد فقط zip ) و ارسال کنید.

در صورت رعایت نکردن هر کدام از نکات بالا متاسفانه نمره شما توسط سیستم صفر خواهد شد .

نکته: سیستم داوری آنلاین از پایتون 3.4 استفاده می کند، در این نسخه دیکشنری ها ترتیب ورود اطلاعات به خود را به یاد نمی آورند و ممکن است در صورت مرتب سازی آنها به نتیجه مطلوب نرسید، برای رفع این مشکل به جای dict از OrderedDict استفاده کنید، این ساختار داده را می توانید از کتابخانه collections در برنامه وارد کنید.

1-معدل هر فرد را محاسبه کند و همراه با نام هر فرد ذخیره کند، ترتیب خروجی اسامی باید دقیقا مساوی ترتیب فایل ورودی باشد.

2-معدل ها را به ترتیب صعودی همراه با نام هر فرد ذخیره کند. لطفا توجه کنید اگر از dict استفاده می کنید ترتیب معدل ها در آن مشخص نیست برای اطلاعات بیشتر به این لینک مراجعه کنید. https://docs.python.org/3.6/tutorial/datastructures.html#dictionaries

۳-سه معدل برتر را با نام هر فرد ذخیره کند.

۴-سه معدل پایین را بدون نام هر فرد ذخیره کند.

5-میانگین معدل ها را محاسبه و ذخیره کند.

محتوای فایل برای سابمیت

def calculate_averages(input_file_name, output_file_name):

پاسخ‌ها به این تاپیک
سروناز اخوندی
سروناز اخوندیشیفته ی برنامه نویسی
۱۳۹۹/۰۶/۲۰

من تلاش خودمو کردم نوشتم یه چیزایی ولی تو مرحله صعودی کردنش ارور میده

import csv
# For the average
from statistics import mean

def calculate_averages(gradess,outt):
reader=csv.reader()
for row in reader:
name=row[0]
these_grades=list()
for grades in row[1:]:
these_grades.append(int(grades))
print((name,mean(these_grades)))
def calculate_sorted_averages(gradess,outt):
calculate_averages.sort()
print(*calculate_averages,sep='\n')

لطفا کمک کنید تا تمومش کنم🙌