sys.argv[0] 总是 returns 没有

sys.argv[0] always returns nothing

我试图使用 sys.argv[0] 来获取脚本的名称,但它没有返回任何内容。我想那是因为没有脚本名称被传递给 Python 解释器,但我不知道如何修复它。

我的代码:

import sys
print ("This is the name of the script: ", sys.argv[0])
sys.argv[0]

输出:

>>> import sys
>>> print ("This is the name of the script: ", sys.argv[0])
This is the name of the script:
>>> sys.argv[0]
''

谢谢

嗯,这是意料之中的,

你在解释器上 运行 编译你的代码,它不是任何模块也不是文件,所以 sys.argv 知道并给你一个空字符串。

这是个好兆头。

如果你 运行 它在一个实际的模块或文件中,它会像预期的那样完美地工作。

你应该 运行 你的代码在 shell 中,然后是 python 文件名的参数,就像:python3 test.py 第一秒.然后在代码中,你可以找到文件中的args。

print(sys.argv[1]) -------> first<br>    
print(sys.argv[2]) -------> second

希望对您有所帮助。