Python错误:"ValueError:需要多于1个值才能解压缩"

Cap*_*ous 46 python arguments

在Python中,当我运行此代码时:

from sys import argv

script, user_name =argv
prompt = '>'

print "Hi %s, I'm the %s script." % (user_name, script)
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

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

这个错误意味着什么?

Dav*_*d Z 39

可能你没有在命令行上提供参数.在这种情况下,sys.argv只包含一个值,但它必须有两个,以便为两者提供价值user_namescript.


Aes*_*ete 8

你得到''ValueError:需要超过1个值来解包'',因为你只给了一个值,脚本(在这种情况下是ex14.py)

问题是,您在运行.py文件后忘记添加名称.

你的代码的第3行是

script, user_name = argv
Run Code Online (Sandbox Code Playgroud)

脚本是ex14.py,你忘了在之后添加一个名字

所以,如果你的名字是michael,那么你进入终端的东西应该是这样的:

> python ex14.py michael
Run Code Online (Sandbox Code Playgroud)

进行此更改,代码运行完美