isinstance(n, int)
If you need to know whether it’s definitely an actual int and not a subclass of int (generally you shouldn’t need to do this):
type(n) is int
this:
return int(n) == n
isn’t such a good idea, as cross-type comparisons can be true – notably int(3.0)==3.0