print "Welcome to Amanda's Toy Factory"
print "At this factory, you will need to have 5 upper pieces and 2 lower pieces to create a toy"
x = input("How many toys would you like to make?")
print "To create",x,"toys, you will need", x*5, "upper pieces and", x*2, "lower pieces"
a = input("How many upper pieces did you bring?")
b = input("How many lower pieces did you bring?")
Ex: If you input you have 23 U pieces and 5 L pieces, it should tell you that you can create 2 toys and you will have 13 U pieces and 1 L piece left.
Edit) Thank you Larry for telling me what was wrong, I corrected and submitted it.
You're not having an Python problem, you're having an algorithm problem.
In order to figure out the maximum number of toys that can be built, you need to ask yourself "How many toys can be built from the U pieces" and "How many toys can be built from the L pieces"? The actual number of toys you can build is the lower of those two numbers, right? (Since you have to stop building toys when you run out of one or the other parts).
How do you figure how many 5-piece toys you can make out of 11, 25, or 32 pieces? You divide the number of pieces available by the pieces required for each toy.
You seem to have hit on this idea because you are dividing the pieces available by the pieces required -- but (from the name of your variables) you seem to believe this calculates the number of pieces used, not the number of toys that can be built. And you're not finding the lower of the two toy numbers.
Once you've solved for the number of toys you can build, it's easy to calculate the left-over pieces.