2017-03-22 2 views
-4

に私のコードはエラー()のpython

ValueError: too many values to unpack

私はこの問題を解決するために何ができるのですか?

num_fite,town_sorse,exsit_dayt,exsit_time,destnithon_town,lend_houer,mill,price,name,famliy,titel = raw_input("Enter anorgnized here: ").split() 

私はこの

EL-783 TLV 07APR 2315 NYC 08APR 1145 VEG $656 EMMA STONE Ms. 

に入ったしかし、私はこのエラー

Traceback (most recent call last): File "", line 1, in ValueError: too many values to unpack 
+2

ようこそStackOverflow。質問を適切に書式設定することで、適切なフィードバックを得る機会が増えます。 – xtofl

+0

入力は12個の要素に分割されていますが、割り当ての左に11個の変数しかありません。私はあなたが '08APR'の変数を忘れたと思う。 –

答えて

0

は、あなたがそれを10を与えるように、結果スプリットから()操作は、スペースで区切られた10個の言葉を期待開梱取得します変数。しかし、あなたが提供する文字列には11ワードがあります。

"lend_dayt"変数を追加するのを忘れていると思われる変数を見てください。

0

あなたのコードは実際には(定義した変数の数に応じて)11個の値を期待していますが、入力には10個しか渡していません。あなたがそれらを与えている

num_fite、town_sorse、exsit_dayt、exsit_time、destnithon_town、lend_houer、ミル、価格、名前、famliy、TITEL

あなたの入力によって充填する11個の変数を期待します分割さすることができます10の入力:

EL-783 TLV 07APR 2315 NYC 08APR 1145 VEG $ 656エマ・ストーン氏は

0

split関数はtupleを返します。この場合、12個のエントリが入力されます(入力文字列の12語)。

構文

the_tuple = "a b".split() 
a, b = the_tuple 

を提供する変数にタプルの要素を「解凍」します。左側の変数の数はタプルの要素数と一致しない場合は、エラーになります:

a, b, c = (1, 2) # not enough values to unpack 
a, b, c = (1, 2, 3, 4) # too many values to unpack 

はここにあなたのケースです:素敵なあなたのコードをフォーマット

In [3]: len("EL-783 TLV 07APR 2315 NYC 08APR 1145 VEG $656 EMMA STONE Ms.".split()) 
Out[3]: 12 

これらのエラーを回避するのに役立ちます。