X

آموزش مقدماتی پایتون | پروژه معدل دانش آموزان - قسمت 3

پروژه معدل دانش آموزان قسمت 3

اگر به خاطر داشته باشید، در قسمت قبل به چالشی برخوردیم که اکنون با استفاده از دیکشنری ها به سادگی می توانیم آن را برطرف کنیم. آخرین ورژن کدی که برای این پروژه نوشتیم کد زیر است:

dorus = ["riazi", "adabiat", "varzesh", "farsi", "zist", "tarikh", "joghrafia"]

nomarat = []

for dars in dorus:
   #گرفتن نمره هر درس از کاربر
   nomre = float(input("nomreye "+ dars + " ra vard konid:"))
   #اضافه کردن نمره درس به لیست nomarat
   nomarat.append(nomre)

print(nomarat)

#محاسبه جمع همه نمرات
sum = 0
for nomre in nomarat:
   sum += nomre

#محاسبه معدل
moaddel = sum / len(nomarat)
print("معدل شما: " + str(moaddel))

اکنون می خواهیم نمرات را به جای لیست در یک دیکشنری ذخیره کنیم: کلید های این دیکشنری، نام درس و مقادیر آن، نمرات دانش آموز هستند.

می خواهیم در نهایت متغیر nomarat با نمرات فرضی، چنین ساختاری داشته باشد:

nomarat = {
   "riazi" : 12.5,
   "adabiat" : 14.0, 
   "varzesh" : 16.5, 
   "farsi" : 18.25, 
   "zist" : 20.0, 
   "tarikh" : 19.0,
   "joghrafia" : 20.0
}

در نتیجه کد بالا را به این شکل تغییر می دهیم:

dorus = ["riazi", "adabiat", "varzesh", "farsi", "zist", "tarikh", "joghrafia"]

#ساخت یک دیکشنری خالی
nomarat = {}

for dars in dorus:
   #گرفتن نمره یک درس
   nomre = float(input("nomreye "+ dars + " ra vard konid: \n"))
   #اضافه کردن آن نمره برای کلید درس مورد نظر
   nomarat[dars] = nomre

print(nomarat)

#محاسبه معدل
sum = 0
for key in nomarat:
   #دریافت نمره براساس نام کلید و جمع کردن با مقدار قبلی
   sum += nomarat[key]

moaddel = sum / len(nomarat)
print("معدل شما: " + str(moaddel))

تغییرات این کد نسبت به کد قبل:

1- به جای یک لیست، یک دیکشنری خالی با نام nomarat ایجاد می کنیم.

2- در حلقه for با استفاده از نام درس به عنوان کلید، نمره دانش آموز را به دیکشنری nomarat اضافه می کنیم.

پرسش و پاسخ این درس

برای ثبت پرسش ابتدا در سایت وارد شوید.

  • 1
  • 2