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 trialShreyas Papinwar
2,371 PointsI checked this code offline and it works, but in treehouse I get an error message task 1 is no longer passing.
please check both the functions I made.
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(title):
lists = []
for key in title:
string = key
for course in COURSES:
if string in COURSES[course]:
lists.append(course)
return lists
def covers_all(courses):
list = []
string = []
for i in courses:
string.append(i)
for course in COURSES:
if string in COURSES[course]:
list.append(course)
return list
1 Answer
Chris Freeman
Treehouse Moderator 68,454 PointsIt looks like the indentation was disturbed in the covers
function. Should be:
def covers(title):
lists = []
for key in title:
string = key
for course in COURSES:
if string in COURSES[course]:
lists.append(course)
return lists
Also, there is no need to assign key
to string
. You can use key
directly in the if
statement.
For covers_all
, you should not use the built-in type list
as a variable name. Overriding the object list
appears to affect the challenge checker and Task 1 stops working.
Change the variable list
to "lst" or "result" or some other name.
The challenge is looking for set
math. Try exploring set.intersection
or ^& to solve the task!
Post back if you have more questions. Good luck!!