Python错误:“value Error:需要超过1个值才能解包”

2024-03-29 10:22:53 发布

您现在位置:Python中文网/ 问答频道 /正文

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

from sys import argv

script, user_name =argv
prompt = '>'

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

我得到这个错误:

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

这个错误是什么意思?


Tags: the代码namefromimportmost错误sys
3条回答

您正在获取“ValueError:需要多个值才能解包”,因为您只提供了一个值,即脚本(在本例中为ex14.py)

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

代码的第3行是

script, user_name = argv

脚本是ex14.py,您忘记在后面添加名称

所以如果你的名字是迈克尔,那么你进入终端的东西应该看起来像:

> python ex14.py michael

进行此更改,代码将运行正常

可能您没有在命令行上提供参数。在这种情况下,sys.argv只包含一个值,但它必须有两个值才能同时为user_namescript提供值。

你不能在交互式解释器中运行这段代码。 您需要先将它保存到一个文件中,这样就可以像这样将参数传递给它

$ python hello.py user338690

相关问题 更多 >