When would you use $_post instead of $post?

I’m not certain, but if you’re talking about $_post as seen here:

http://codex.wordpress.org/Function_Reference/in_category

It’s referring to a post ID so they’ve probably added the underscore to avoid confusion. The $post variable is a post object with all the details of the post.

However, $_POST is a global PHP variable containing all the values sent from a form:

http://php.net/manual/en/reserved.variables.post.php