There's an input and an output there?
The equation "y = f(x)" is an assertion that the variable "y" and the expression "f(x)" are equal.
What such an assertion "means" depend upon what precisely you mean by "y" and "x". (and "f")
e.g. if the variables "x" and "y" are being used in a way such that "(x,y)" represents an indeterminate point of the coordinate plane, then "y = f(x)" is a predicate on points -- for any particular point, "y = f(x)" evaluates either to true or to false. Such predicates have many uses -- e.g. to specify the hypothesis of an interesting problem, or to name an interesting subset of the plane.
Sometimes, rather than letting all variables be independent indeterminates, one may decide to allow functional dependence. "y = f(x)" would then be an expression of that functional dependence. In such a context, rather than our mathematical language saying "x and y are variables denoting real numbers", we have decided it should say "x and y are variables denoting real numbers satisfying the functional relationship y = f(x)". e.g. if we specialize to the hypothesis that x=2, we must also specialize to the hypothesis that y=f(2).
Sometimes, would take the expression "y = f(x)" as defining a bit of short-hand, that anywhere we write the letter "y", we should instead replace it with the symbols "f(x)".
Often, several conventions are used simultaneously. Sometimes you even see the abomination "y = y(x)".

Fortunately, for many purposes, the confusion isn't especially harmful.
Alas, you probably won't get a precise idea of all of these things without studying abstract algebra, differential geometry, or a categorical logic.

(Others feel free to add other places where it might be encountered)