Ask your own question, for FREE!
MIT 6.00 Intro Computer Science (OCW) 15 Online
OpenStudy (anonymous):

ps9#2: quick question. for part #2 we have to write addShape to our shape set. My thinking is that I would test with an if statement to verify that the argument passed to the addShape is in fact a valid shape. What's odd is that the program works when I'm limited just to circles. however when I use an if statement with 'or' for circle,square,triangle, I get an error. can anyone explain what's going on? here's the circle example http://codepad.org/LK04Deey here's the circle, square, triangle example where I get a type error. http://codepad.org/T0bXeVGk

OpenStudy (anonymous):

maybe try the isinstance() function instead - http://docs.python.org/library/functions.html#type

OpenStudy (anonymous):

I figured it out. It was kinda obvious. I think if only takes one comparison/equality. You can't use 'or' within the if statement. http://codepad.org/kTzrKgPa

OpenStudy (anonymous):

http://dpaste.com/699312/

OpenStudy (anonymous):

you should be able to use multiple expresions (that evaluate to a boolean) seperated be or or and in an if statement - http://dpaste.com/699316/

OpenStudy (anonymous):

ah. I got my equalities screwed up. I need an 'and' statement instead of an 'or' statement. if it's the case that they are all 'not equal', then I don't have a valid shape. Thanks.

OpenStudy (anonymous):

or use or with == instead of != http://dpaste.com/699319/

OpenStudy (anonymous):

and using isinstance is easier if they are all subclasses of the same class http://dpaste.com/699332/

OpenStudy (anonymous):

thanks for all the feedback bwCA. really helps my understanding.

Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!
Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!