Last active
December 14, 2019 20:34
-
-
Save lfalanga/a1f565abe69222608e381fac7cbade7a to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Example 1: Print out students information | |
lloyd = { | |
"name": "Lloyd", | |
"homework": [90.0, 97.0, 75.0, 92.0], | |
"quizzes": [88.0, 40.0, 94.0], | |
"tests": [75.0, 90.0] | |
} | |
alice = { | |
"name": "Alice", | |
"homework": [100.0, 92.0, 98.0, 100.0], | |
"quizzes": [82.0, 83.0, 91.0], | |
"tests": [89.0, 97.0] | |
} | |
tyler = { | |
"name": "Tyler", | |
"homework": [0.0, 87.0, 75.0, 22.0], | |
"quizzes": [0.0, 75.0, 78.0], | |
"tests": [100.0, 100.0] | |
} | |
students = [lloyd, alice, tyler] | |
for student in students: | |
print student["name"] | |
print student["homework"] | |
print student["quizzes"] | |
print student["tests"] | |
# Example 2: Getting letter grade for a specific student | |
lloyd = { | |
"name": "Lloyd", | |
"homework": [90.0, 97.0, 75.0, 92.0], | |
"quizzes": [88.0, 40.0, 94.0], | |
"tests": [75.0, 90.0] | |
} | |
alice = { | |
"name": "Alice", | |
"homework": [100.0, 92.0, 98.0, 100.0], | |
"quizzes": [82.0, 83.0, 91.0], | |
"tests": [89.0, 97.0] | |
} | |
tyler = { | |
"name": "Tyler", | |
"homework": [0.0, 87.0, 75.0, 22.0], | |
"quizzes": [0.0, 75.0, 78.0], | |
"tests": [100.0, 100.0] | |
} | |
# Add your function below! | |
def average(numbers): | |
total = sum(numbers) | |
total = float(total) | |
return total / len(numbers) | |
def get_average(student): | |
homework = average(student["homework"]) | |
quizzes = average(student["quizzes"]) | |
tests = average(student["tests"]) | |
return homework * 0.1 + \ | |
quizzes * 0.3 + \ | |
tests * 0.6 | |
def get_letter_grade(score): | |
if score >= 90: | |
return "A" | |
elif score >= 80: | |
return "B" | |
elif score >= 70: | |
return "C" | |
elif score >= 60: | |
return "D" | |
else: | |
return "F" | |
print get_letter_grade(get_average(lloyd)) | |
# Example 3: Getting class average | |
lloyd = { | |
"name": "Lloyd", | |
"homework": [90.0, 97.0, 75.0, 92.0], | |
"quizzes": [88.0, 40.0, 94.0], | |
"tests": [75.0, 90.0] | |
} | |
alice = { | |
"name": "Alice", | |
"homework": [100.0, 92.0, 98.0, 100.0], | |
"quizzes": [82.0, 83.0, 91.0], | |
"tests": [89.0, 97.0] | |
} | |
tyler = { | |
"name": "Tyler", | |
"homework": [0.0, 87.0, 75.0, 22.0], | |
"quizzes": [0.0, 75.0, 78.0], | |
"tests": [100.0, 100.0] | |
} | |
# Add your function below! | |
def average(numbers): | |
total = sum(numbers) | |
total = float(total) | |
return total/len(numbers) | |
def get_average(student): | |
homework = average(student["homework"]) | |
quizzes = average(student["quizzes"]) | |
tests = average(student["tests"]) | |
return 0.1 * homework + 0.3 * quizzes + 0.6 * tests | |
def get_class_average(class_list): | |
results = [] | |
for student in class_list: | |
student_avg = get_average(student) | |
results.append(student_avg) | |
return average(results) | |
class_list = [lloyd, alice, tyler] | |
print get_class_average(class_list) | |
# Example 4: Getting class letter grade | |
lloyd = { | |
"name": "Lloyd", | |
"homework": [90.0, 97.0, 75.0, 92.0], | |
"quizzes": [88.0, 40.0, 94.0], | |
"tests": [75.0, 90.0] | |
} | |
alice = { | |
"name": "Alice", | |
"homework": [100.0, 92.0, 98.0, 100.0], | |
"quizzes": [82.0, 83.0, 91.0], | |
"tests": [89.0, 97.0] | |
} | |
tyler = { | |
"name": "Tyler", | |
"homework": [0.0, 87.0, 75.0, 22.0], | |
"quizzes": [0.0, 75.0, 78.0], | |
"tests": [100.0, 100.0] | |
} | |
# Add your function below! | |
def average(numbers): | |
total = sum(numbers) | |
total = float(total) | |
return total/len(numbers) | |
def get_average(student): | |
homework = average(student["homework"]) | |
quizzes = average(student["quizzes"]) | |
tests = average(student["tests"]) | |
return 0.1 * homework + 0.3 * quizzes + 0.6 * tests | |
def get_class_average(class_list): | |
results = [] | |
for student in class_list: | |
student_avg = get_average(student) | |
results.append(student_avg) | |
return average(results) | |
def get_letter_grade(score): | |
if score >= 90: | |
return "A" | |
elif score >= 80: | |
return "B" | |
elif score >= 70: | |
return "C" | |
elif score >= 60: | |
return "D" | |
else: | |
return "F" | |
students = [lloyd, alice, tyler] | |
print get_letter_grade(get_class_average(students)) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment