So I am making a program in which it reads a .txt file and runs different classes; I made it so it opens the file and stores the text in a decision string, Using if decision == "wincode" or "lostcode" I want it to run a specific class like:
class wonToss():
wininput = input("Do you want to choose: ")
def outChoice():
print("no error")
def inChoice():
print("No error")
if wininput == "Indoor":
inChoice()
elif wininput == "Outdoor":
outChoice()
I put the "No error" for testing to see if it works
class lostToss():
def botChoose():
print("Bot is choosing between Indoor and Outdoor.")
print(".")
time.sleep(0.25)
print("..")
time.sleep(0.25)
print("...")
time.sleep(0.25)
print("")
choices = ['Indoor', 'Outdoor']
botting = random.choice(choices)
print(f"And the bot chose: {botting}")
time.sleep(2)
botChoose()
And this is the second class. So now, I want it to check the code and class the specific class.
This is the check code:
f=open("TossDecision.ch", "r")
if f.mode == 'r':
decision = f.read()
if decision == "jhe78r2dbgv67t2yhdb7vgr":
print("")
wonToss()
elif decision == "jhe78rnxshwdn7wgh89u3cn":
print("")
lostToss()
else:
print("Toss Decision changed! Re-run the PlayGame file.")
exit()
But the problem is, When I run the program it just shows:
Do you want to choose (Indoor) or (Outdoor)?: Indoor
Bot is choosing between Indoor and Outdoor.
.
..
...
And the bot chose: Indoor
It calls both the classes. Currently its set to loss. It still calls wonToss() Can anyone help fix this
CodePudding user response:
Sorry, but you are using classes totally wrong.
Please read on Object-oriented programming.
A class is a blueprint for an object.
In most times, you instantiate an object of the class, and work with it. Like this:
class Mything: def InChoice(self): print("No errror indoors") def OutChoice(self): print("No error outdoors") def ask_choice(self): wininput = input("Do you want to choose: ") if wininput == "Indoor": self.InChoice() elif wininput == "Outdoor": self.OutChoice()
Then in your program you do:
choice_object=Mything()
choice_object.ask_choice()
