Jestem nowy w Pythonie i to pierwszy raz za pomocą funkcji. Zrobiłem trochę pętli, aby upewnić się, że wkład użytkownika jest int, a nie sznur, ale kiedy wprowadzam numer, nadal kontynuuje pętlę. ...

-1
FroyFries 15 marzec 2021, 08:17

2 odpowiedzi

Najlepsza odpowiedź

Problem z twoją funkcją jest to, że podczas powrotu loop w checkIfInt, nie przypisujesz go na nic w pętli. Musisz wymienić

checkIfInt(x)

Z

loop = checkIfInt(x)

Jednakże oznacza to również, że checkIfInt powinien powrócić 1, jeśli używana jest oświadczenie except, w przeciwnym razie funkcja powróci None, a pętla wyjdzie (None != 1).

except:
  print('What you typed was not a number')
  return(1)

UWAGA: Ogólnie rzecz biorąc, może być pomocne, aby użyć True/False podczas pętli, a nie 1/0 Ponadto można również sprawdzić typy z type(fib_int1) == int Chociaż nie zweryfikuje go od 0 do 9.

0
Dharman 15 marzec 2021, 05:44

Musisz napisać poniższy kod na końcu pętli

Pętla = + 1

LUB

LOOP = LOOP + 1

0
Hani 15 marzec 2021, 05:24