[Tutor] designing POOP
bhaaluu
bhaaluu at gmail.com
Fri Feb 8 20:54:45 CET 2008
On Feb 7, 2008 9:40 PM, Tiger12506 <keridee at jayco.net> wrote:
> There's a couple of errors in here that no one has addressed yet because the
> question was geared towards programming style... So now I will address them.
> Or undress them, I suppose. ;-)
I didn't make much progress until I started thinking
about the Explorer and Light classes as actual objects.
I've tried to address what you undressed. 8^D
Here is another version to undress:
#!/user/bin/python
import time
class Explorer(object):
"""player"""
def __init__(self,name):
"""initilaization method"""
self.__name = name
self.strength = 20
self.wealth = 60
def get_name(self):
return self.__name
class Light(object):
"""light switch"""
def __init__(self,light):
self.light = light
def state(self):
if self.light == 0:
print (" IT IS TOO DARK TO SEE ANYTHING")
else:
print (" THE LIGHTS ARE ON, BUT NO ONE'S HOME")
def cs():
print "\n"*50
def main():
tally = 0
switch = Light(0) #instance
cs() # clear screen
name = raw_input(" WHAT IS YOUR NAME, EXPLORER? ")
explr = Explorer(name)
while True:
cs() # clear screen
print (" %s, YOUR STRENGTH IS %d" % (explr.get_name(), explr.strength))
print (" YOU HAVE $%d" % explr.wealth)
switch.state()
print
print
answer = raw_input(" WHAT DO YOU WANT TO DO? [Q|L]: ")
if answer.upper() == "Q":
break
if answer.upper() == "L":
if switch.light == 1:
switch.light = 0
else:
switch.light = 1
explr.strength -= 5
explr.wealth -= 15
if explr.wealth <= 0:
print
print (" YOU HAVE NO MONEY")
time.sleep(1)
if explr.strength <= 0:
print
print (" YOU DIED...")
time.sleep(1)
break
else:
print (" INVALID CHOICE")
tally += 1
print
print (" FINAL SCORE:")
print (" TALLY: %d" % tally)
print (" STRENGTH: %d" % explr.strength)
print (" WEALTH: $%d" % explr.wealth)
if __name__ == "__main__":
main()
Happy Programming!
--
b h a a l u u at g m a i l dot c o m
"You assist an evil system most effectively by obeying its
orders and decrees. An evil system never deserves such
allegiance. Allegiance to it means partaking of the evil.
A good person will resist an evil system with his or her
whole soul." [Mahatma Gandhi]
More information about the Tutor
mailing list