How do assign a variable an input as the value in a function and allow it to be accessed?

I know that this is probably a simple fix, but I'm pretty new at programing.

def main2():
    x = int(input("What is the length of your rectangle?:  "))
    y = int(input("What is the width of your rectangle?:  "))
    z = int(input("What is the height of your rectangle?:  "))

def area2():
    return(x * y)

if __name__ == "__main__":

My problem is that I am getting a "'variable' not accessed." Because of this, my program is not using the variables later in the code.

I've tried pretty stupid stuff that I expected to not work because I don't know very much code.


  • You need to pass the variable to the function. Inside main2() change the line with print() to this:

    print(area2(x, y))

    You should also change your function to accept two variables.

    def area2(x, y):
        return(x * y)

    Otherwise, make x,y as global:

    global x,y

    Then you don't need to pass the variables.