Python Error: "ValueError: need more than 1 value to unpack"


Question

In Python, when I run this code:

from sys import argv

script, user_name =argv
prompt = '>'

print "Hi %s, I'm the %s script." % (user_name, script)

I get this error:

Traceback (most recent call last):  
script, user_name =argv  
ValueError: need more than 1 value to unpack

What does that error mean?

1
46
12/16/2015 11:57:10 PM

Accepted Answer

Probably you didn't provide an argument on the command line. In that case, sys.argv only contains one value, but it would have to have two in order to provide values for both user_name and script.

39
5/11/2010 8:20:17 PM

youre getting ''ValueError: need more than 1 value to unpack'', because you only gave one value, the script (which is ex14.py in this case)

the problem is, that you forgot to add a name after you ran the .py file.

line 3 of your code is

script, user_name = argv

the script is ex14.py, you forgot to add a name after

so if your name was michael,so what you enter into the terminal should look something like:

> python ex14.py michael

make this change and the code runs perfectly


Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon