Verificando se uma sequência é um número inteiro ou flutuante

Então, eu estou criando um programa para mostrar sistemas numéricos, no entanto, me deparei com problemas no primeiro obstáculo. O programa pegará um número do usuário e o usará em todo o programa para explicar vários conceitos de ciência da computação.

Ao explicar minha primeira seção, sistemas numéricos, o programa dirá que tipo de número é. Estou fazendo isso convertendo a string em um número flutuante. Se o número flutuante tiver apenas '.0' depois dele, ele o converterá em um número inteiro.

Atualmente estou usando esse código

while CorrectNumber == False:
try:
    Number = float(NumberString) - 0
    print (Number)
except:
    print ("Error! Not a number!")

Isso é útil, pois mostra se o usuário digitou um número ou não. No entanto, não tenho certeza de como agora verificar o valor após a casa decimal para verificar se devo convertê-lo em um número inteiro ou não. Alguma dica?

questionAnswers(3)

yourAnswerToTheQuestion