ValueError: zu viele Werte zu entpacken (dürfte 2)
In der Python-tutorial Buch, das ich verwende, ich tippte ein Beispiel gegeben für gleichzeitige Zuordnung. Ich bekomme den oben genannten ValueError, wenn ich das Programm ausführen, und kann nicht herausfinden, warum.
Hier der code:
#avg2.py
#A simple program to average two exam scores
#Illustrates use of multiple input
def main():
print("This program computes the average of two exam scores.")
score1, score2 = input("Enter two scores separated by a comma: ")
average = (int(score1) + int(score2)) / 2.0
print("The average of the scores is:", average)
main()
Hier ist die Ausgabe.
>>> import avg2
This program computes the average of two exam scores.
Enter two scores separated by a comma: 69, 87
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
import avg2
File "C:\Python34\avg2.py", line 13, in <module>
main()
File "C:\Python34\avg2.py", line 8, in main
score1, score2 = input("Enter two scores separated by a comma: ")
ValueError: too many values to unpack (expected 2)
Mögliche Duplikate von python valueerror : zu viele Werte zu entpacken
Dies ist, weil Sie mit Python ist3 überprüfen Sie meine Antwort vielleicht hilft es Euch 🙂
Dies ist, weil Sie mit Python ist3 überprüfen Sie meine Antwort vielleicht hilft es Euch 🙂
InformationsquelleAutor Ziggy | 2014-06-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beurteilung durch die Aufforderung, Sie vergessen zu nennen
str.split
am Ende der 8. Zeile:Tun, so spaltet sich der Eingang auf der Komma. Sehen Sie eine demonstration unter:
InformationsquelleAutor iCodez
Der obige code funktioniert auf Python 2.x. Da
input
verhält sich so, alsraw_input
gefolgt von einemeval
auf Python 2.x wie hier dokumentiert - https://docs.python.org/2/library/functions.html#inputJedoch obige code löst den Fehler, den Sie erwähnt auf Python 3.x. Auf Python 3.x Sie können die
ast
Modulliteral_eval()
Methode der Benutzereingabe abhängig ist.Dies ist, was ich meine:
literal_eval
!InformationsquelleAutor shaktimaan
Dies ist, weil das Verhalten von input geändert in Python ist3
In python2.7-Eingang liefert den Wert und das Programm funktionieren in dieser version
Aber in Python ist3 Eingabe zurück string
versuchen, diese und es wird funktionieren!
InformationsquelleAutor DexJ
das bedeutet, dass Ihre Funktion zurückkehren, mehr Wert!
ex:
in python2 die Funktion
cv2.findContours()
zurück -->contours, hierarchy
aber in Python ist3
findContours(image, mode, method[, contours[, hierarchy[, offset]]]) -> image, contours, hierarchy
also, wenn Sie verwenden diese Funktion,
contours, hierachy = cv2.findContours(...)
ist auch von python2, aber in Python ist3 Funktion zurückgeben 3 Wert 2 variable.SO ValueError: zu viele Werte zu entpacken (dürfte 2)
InformationsquelleAutor X.Na