Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我不知道argv到底是做什么的,我需要一个解释_Python_Variables_Parameters_Valueerror_Unpack - Fatal编程技术网

Python 我不知道argv到底是做什么的,我需要一个解释

Python 我不知道argv到底是做什么的,我需要一个解释,python,variables,parameters,valueerror,unpack,Python,Variables,Parameters,Valueerror,Unpack,所以我在读一本书,我看到他这样做: from sys import argv script, first, second, third = argv print ("The script is called: ", script) print ("Your first variable is: ",first ) print ("Your second variable is: ", second) print ("You

所以我在读一本书,我看到他这样做:

from sys import argv

script, first, second, third = argv

print ("The script is called: ", script)
print ("Your first variable is: ",first )
print ("Your second variable is: ", second)
print ("Your third variable is: ", third)
它给出了这个错误,但在书中它是有效的:

Traceback (most recent call last):
  File "c:\Users\FORCE 5 CORE\Desktop\visual studio code file\1\ex1.py", line 123, in <module>
    script, first, second, third = argv
ValueError: not enough values to unpack (expected 4, got 1)
回溯(最近一次呼叫最后一次):
文件“c:\Users\FORCE 5 CORE\Desktop\visual studio代码文件\1\ex1.py”,第123行,在
脚本,第一,第二,第三=argv
ValueError:没有足够的值来解包(预期值为4,实际值为1)

脚本试图获得4个传递给它的参数,但您没有传递任何参数,因此,argv只有脚本名称,因为它是由您的操作系统提供的(因此,“预期为4,获得1”)

您需要使用另外3个参数运行脚本,例如:

python ex1.py val1 val2 val3

它是Python的命令行参数。在调用程序时,您可以通过传递这些值。 它基本上是一个数组

script, first, second, third = argv
当您使用以下参数从终端调用函数时,
script,first、second、third=argv
类似:

>>python program_name.py 1 2 3
基本上,您将
脚本指定为程序名.py
第一个为1
第二个为2
第三个为3


为了避免出现错误,您必须在从终端运行程序时提供所有参数。

这是否回答了您的问题?