Why can't I say "Le amo"?
It has to be "Lo amo/La amo" because the "you" is the direct object. Yet I say "le encanta" and "le gusta". For example' "Le encanta el pescado". "It enchants him" - shouldn't "he" be a direct object as well?" The more I think about it the more confused I become - so I hope my question made sense! Gracias!
2 Answers
I'll try not to get too technical here, but "gustar" and "encantar" are intransitive verbs, meaning that they can't accept a direct object, whereas "amar" is a transitive verb, meaning that it can accept a direct object.
"Gustar" is often inaccurately (when it comes to understanding how the verb works) translated as "to like" or "to please" when it should be "to be pleasing (to)." "Encantar" is the same way and really means "to be enchanting (to)." In your examples, "he" is actually an indirect object because of the way the verb works. For example, "(a él) le encanta el pescado" sounds better in English as "the fish enchants him," but translated more literally it would be "the fish is enchanting to him" or, to try and keep the syntactical structure, "to him is enchanting the fish."
"Amar," however, being transitive, accepts a direct object. So, "I love you (formal)" would be "lo/a amo" because "you" is directly receiving the action of love and thus, is the direct object.
Out of interest, you may want to look at the leísmo variation in which "le" is used in the place of "lo," especially when referring to people.
Welcome lalacita1 , and thank you for a good question.
And freez10108 , for a well answered reply .