Which is first, the egg or the chicken?
It depends.
If you are new and not sure of what you do, then by all means ask a peer to give you a bit of help. This is an informal but very serious and valuable code review.
Generally though I would suggest that you do your own dirty work first, make sure you have ironed out the code, commented it well in the right places (i.e. the tricky bits, not the obvious ones), it at least basically works (you have tested at the very minimum general cases and some limit cases or exceptions). Then you take it to your peer.
Getting your code reviewed too early could end up in a terrible waste of your peer's time. Getting it reviewed too late could end up in a terrible waste of your time. You need to find the right balance for highest efficiency. So some tests go first, then the review, then more testing. Potentially you may have several code reviews, depending on complexity and iterations, with different purposes and focuses.
The less sure you are the more reviews (when you are in your early learning phase, this is normal). The more sure you are the more reviews too (it is never good to be too sure of yourself, that means you generally are not quite as good a team player and could land others in trouble, you need to make sure your code can be understood and used by others). It is when you are in the middle that reviews can be spaced out some.
Only my two cents.