Ich habe also versucht, diesen 'Validator' von Pseudocode nach Python zu konvertieren, aber ich bin nicht sicher, ob meine Werte in eine Liste aufgenommen werden. Nachdem ich den ersten Wert eingegeben habe, erscheint eine Fehlermeldung: 'int' object is not callable
. Aber dann, wenn ich von isbn = mylist()
loszuwerden, heißt es, dass name 'isbn' is not defined
. Kann mir jemand zeigen, wo mein Fehler ist?Überprüfen, ob eine ISBN-Buchnummer gültig ist Python
Ich bin mir ziemlich sicher, dass ich meine Liste nicht richtig aufstelle. Hier
ist die Pseudo-Code ich folgendes:
Und mein Code:
def checkDigit():
calculateDigit = 0
count = 1
calculateDigit = 10 - calculateDigit
for count in range (1,14):
mylist = int(input("Please enter the next digit of the ISBN: "))
# isbn = mylist()
while (count <= 13):
calculateDigit = calculateDigit + isbn[count]
count = count + 1
calculateDigit = calculateDigit + (isbn[count] * 3)
count = count + 1
while (calculateDigit >= 10):
calculateDigit = calculateDigit - 10
if (calculateDigit == 10):
calculateDigit = 0
if (calculateDigit == isbn[13]):
print ("Valid ISBN")
else:
print ("Invalid ISBN")
checkDigit()
'mylist'ist eigentlich eine ganze Zahl, die jede Iteration ändert. Wenn Sie möchten, dass 'mylist' eine Liste aller ISBN-Nummern enthält, definieren Sie' mylist' außerhalb der for-Schleife und fügen Sie sie innerhalb der foor-Schleife an. Ich glaube auch, dass 'input()' automatisch in 'int' konvertiert wird, obwohl ich mir nicht sicher bin. –