Why is it Tengo un libro para ti instead of Tengo un libro por ti? Isn't por used for exchanges? The sentence Tengo un libro por ti indicates that I will give you something and giving is exchanging, right? Please help.
“Exchange” means trade or swap: you give them something and they give you something back for it. It’s not a gift, its one thing traded for another: I give you the book and you give me a scarf. So maybe that’s why it needs a different word from the word with a gift. I don’t know the Spanish rules at all, but I can see that you’re misusing “exchange.”