You have an indentation problem. Indentation matters in Python. According to the PEP8 styling guideline it is recommended to use 4 spaces
instead of tabs
for indentation. Also you are missing the name variable.
Below is a quick fix:
def sec1 ():
print("You have two doors in front of you. Do you choose the door on the left or right?")
room1 = input('Type L or R and hit Enter.')
name = "Player Name"
if room1 == "L":
print("********")
print("Good choice", name)
elif room1 == "R":
print("********")
print("Uh oh. Two guards are in this room. This seems dangerous.")
print("Do you want to retreat or coninue?")
roomr = input('Type R or C and hit enter.')
if roomr == "R":
print("Good choice!")
sec1()
sec1()
Why we have sec1() at then end?
Functions are like machines. It does nothing by it's own. Somebody has to operate it. sec1()
(notice the parenthesis) at the end is sending a signal to start executing the function sec1
defined at the top.
I think the best way to learn is to put break points and use the debugger to learn which way the program flows.
Run the program in a debug mode and click on the icons to step through, step over etc. It sounds complicated but it is very easy and saves you a lot of time once you know how to do this feature.
Mathematical Functions
Maybe it is a bit off topic to mention Mathematical Functions
here but I think, it's completely worth it. Functions in programming languages are heavily inspired by Mathematical Functions
, however, in most of the programming languages these days (except functional programming languages like Haskell
, F#
etc) the concepts of the original Mathematical Functions
are quite deviated over the year.
In Mathematics, the output of a function purely depends upon it's input and does not modify the values outside the function, however, in most of the programming languages this is not always the case and sometimes it can be a source of run time errors.
Tips
As you are a beginner, I highly recommend to use a proper IDE (Integrated Development Environment) if you haven't already. PyCharm has a free community version. IDEs come with a PEP8 style checker, debugger, profiler etc and help you to learn Python much more easily.