Conditional: IF current user has NOT commented on current post (not including post author)

[EDIT] Here is the modified code:

$post_id = get_the_ID();          // ID of the current post.
$user_id = get_current_user_id(); // ID of the current user.
$post_author_id = get_post_field( 'post_author', $post_id );
$is_post_author = ( $user_id && $post_author_id == $user_id );
$can_comment = $is_post_author;

/*
 * If $can_comment is not yet TRUE, then it's because either:
 *   a) The user is not the author of the post; or
 *   b) The user is not registered on the site; or
 *   c) The user is logged-out.
 */
if ( $user_id && ! $can_comment ) {
    $comment_count = get_comments( array(
        'post_id' => $post_id,
        'user_id' => $user_id,
        'count'   => true,
    ) );

    $can_comment = empty( $comment_count );
}

if ( ! $is_post_author ) {
    if ( $can_comment ) {
        echo 'Post your comment.';
    } else {
        echo 'Sorry, you\'ve commented. Or you can\'t comment..';
    }
}