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 trialJames N
17,864 Pointssomething's is wrong with the Create a class with a method CodeChallenge
when i type the code at the bottom (labelled method.py) i just get an error telling me to try again! i've copied and pasted this entire code into a workspace and fiddled around using the python interpreter and everything works fine!
Python 3.5.0 (default, Oct 28 2015, 02:02:37)
[GCC 4.8.3 20140911 (Red Hat 4.8.3-9)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from CodeChallenge import Store
>>> Store.hours(1,2)"We're open from 1 to 2"
>>> Store.hours(Store.open,Store.close)
"We're open from 10 to 1000"
#See? it works perfectly!
(in case there's any crucial difference between my workspace code and my codechallenge code, i've pasted my workspace code below)
class Store:
open = 10
close = 1000
def hours(open,close):
placeholder = "We're open from {opentime} to {closetime}"
return placeholder.format(opentime = open, closetime = close)
Hope you can help! Thanks anyway, James.
James N
17,864 Pointswhoops! i though the button that said "add my codechallenge code" would work! oh well... the code is basically the same as the workspace code. i'll remove that extra part.
1 Answer
Chris Freeman
Treehouse Moderator 68,454 PointsThe difference between the interactive run and the code for the challenge, is the interactive run supplies two arguments to hours()
, where in the challenge, no arguments are expected to be used for the method.
The method accesses the values of open
and close
through the instance variables self.open
and self.close
. As a instance method, hours()
needs the instance variable self
as the first parameter:
class Store:
open = 10
close = 1000
def hours(self):
placeholder = "We're open from {opentime} to {closetime}"
return placeholder.format(opentime = self.open, closetime = self.close)
James N
17,864 Pointsthanks! i was a little confused! after all, it says to: "Replace the first placeholder with the open time and the second with the close time."
also, i didn't even know what self did, let alone how to use it.
Thanks alot! i've completed the challenge!
Brendan Whiting
Front End Web Development Techdegree Graduate 84,738 PointsBrendan Whiting
Front End Web Development Techdegree Graduate 84,738 PointsI don't see any text below "And here's my codeChallenge code:"