How about this,
dist = 3.98+0.00j
print(np.real_if_close(dist))
# 3.98
dist = -2.99j
print(np.real_if_close(dist))
# (-0-2.99j)
The above is with default tol=100
, can read more about it at https://numpy.org/devdocs/reference/generated/numpy.real_if_close.html