def feeder():
number = 0
while number < 1:
try:
number = int(raw_input("Please type in a number: "))
except ValueError:
print "This is no valid number."
return number
wert1, wert2, wert3 = feeder(), feeder(), feeder()
Sollte man das so machen?
Oder sollte eine Syntax der Art "feeder()" z.B. Objekten und Klassen vorbehalten sein?
Im allgemeinen möchte man aber eher keine Zahlen über int / raw_input eingeben. Meistens übergibt man Werte mithilfe von Kommandozeilenparametern oder man holt sie sich mittels Dateien (oder ähnlichem). Für Kommandozeilenparameter siehe Optparse.
Was meinst du mit der zweiten Frage? Das ist schon richtig benannt, so, wie es ist. Außer, das der Funktionsname irgendwo nichts über die Funktion aussagt, ist es PEP8.
Im übrigem kannst du auch "while True:" benutzen und hinter numbers ein break setzen. Sollte etwas fehlschlagen, wird automatisch zum except Block gesprungen.
def read_int(prompt="Please input an integer:"):
while True:
try:
return int(raw_input(prompt))
except ValueError:
pass
Denn `feeder` ist kein guter Funktionsname, der hart verdrahtete Prompt-String scheint umgeschickt, zudem spricht er von "number", kann aber nur Ganzzahlen und keine Fließkommazahlen verarbeiten und selbst negative Zahlen gehen aufgrund der while-Schleife nicht.