Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialDaniel Smith
10,172 PointsI'm very lost on the collections set math problem.
I've read through the teacher documents and other peoples questions and I still dont understand what to do here... I know im supposed to use the set math operators but i don't know where and I dont know how to loop and get the key without using 'if topic in' statement. i feel like the iter operator would be useful but i dont understand where I would put it
COURSES = {
"Python Basics": {"Python", "functions", "variables",
"booleans", "integers", "floats",
"arrays", "strings", "exceptions",
"conditions", "input", "loops"},
"Java Basics": {"Java", "strings", "variables",
"input", "exceptions", "integers",
"booleans", "loops"},
"PHP Basics": {"PHP", "variables", "conditions",
"integers", "floats", "strings",
"booleans", "HTML"},
"Ruby Basics": {"Ruby", "strings", "floats",
"integers", "conditions",
"functions", "input"}
}
def covers(topics):
keys=COURSES.keys()
values=COURSES.values()
key_set=[]
for keys in COURSES:
if topics in values:
key_set.append(keys)
return key_set
Jamison Habermann
11,691 PointsJamison Habermann
11,691 PointsRemember that in for loops, best practice is for your first variable should be unique (relative to that particular for loop). You are trying to define it beforehand which is not as helpful. To achieve what I think you are aiming for, you could simply change the for loop to
for key in keys
If we remember DRY, since you do not use your keys variable anywhere else in your function, you can simplify your code by removing
keys=COURSES.keys()
and further change your for loop to
for key in COURSES.keys()
Although, you are now looping through only the keys of each pair in the dict. You may want to rethink what you are looping through using the above logic.