Olá, valeu pela dica, porem ao trocar or por and, ao digitar um numero dentro do intervalo ele faz a formula, mas fica imprimindo o resultado inúmeras vezes.
Ao digitar um valor fora do intervalo ele continua finalizando o programa sem pedir para digitar o valor novamente.
def binadecimal(dec):
binario = ""
while dec // 2 != 0:
binario = str(dec % 2) + binario
dec = dec // 2
return str(dec) + binario
num = int(input("N° Decimal:"))
while num>=0 and num<=1000000:
print(binadecimal(num))