It is hard, but a great book is "foundations of modern analysis" by jean dieudonne. mainly for reals. it covers metric spaces, banach and hilbert spaces, real calculus in finite and infinite dimensions, complex analysis, and soime differential equations and sturm liouville theory. this is a great book for reference if not for self study. for years i noticed almost every tricky question i tried to find a proof of occurs as an exercise in this book with hints. there is even a proof of the jordan curve theorem. but no lebesgue integration.
rudin is notoriously difficult to learn from but is the favorite of professional analysts. i do not know if any of them learned from it, but they all seem to like to teach from it.
mattuck is a terrific teacher, and i think his book is a lot more elementary than rudin.
i think i have never seen a bad complex analysis book. my favorite is by cartan.
there was one i think by greenleaf i liked a lot.