无法让 sys.argv 在 cmd 中给出任何输出
Cannot get sys.argv to give any output in cmd
这可能看起来很基本,但出于某种原因,我无法让任何带有 sys.argv 的程序在命令行中打印。相反,一个新的 cmd window 很快打开,在其内部不显示任何文本,然后关闭。紧接着,cmd 跳过一行并打印 C:\Users\(my userid)>
,等待新的输入。
我的代码如下:
我第一次尝试:
import sys
print(sys.argv)
和 运行 通过命令行输入:
C:\Users\(my userId)\Desktop\filename.py
(文件位置)
没有输出,而是 cmd 执行了我在第一段中描述的操作。
接下来我尝试了:
import sys
def main():
print(sys.argv)
if __name__ == '__main__':
main()
和 运行 它通过命令行的方式完全相同。同样,我对第一段中描述的过程表示欢迎。
我已经检查过我安装 python 的方式是否正确,文件名是否正确,并且文件通常位于它们应该在的位置。我是运行python3.9.
只需输入文件名即可得到预期的 cmd 输出:
'filename.py' is not recognized as an internal or external command,
operable program or batch file.
感谢任何帮助。
编辑:将 python 文件直接移动到 C:\Users(我的用户 ID),然后在 cmd 中使用 filename.py 运行 它会导致与之前相同的问题,程序的两个版本。
您实际上必须 运行 Python 与 python filename.py
或 python3 filename.py
或 py filename.py
。这将启动解释器并将文件名传递给它。然后解释器执行文件的内容。
C:\Users\TigerhawkT3>file.py
'file.py' is not recognized as an internal or external command,
operable program or batch file.
C:\Users\TigerhawkT3>py file.py
['file.py']
首先,sys.argvreturns一个列表。 list[0] 将是您的程序文件名,其余的(list1、list[2] 等)将是您从 cmd 行输入的参数。
import sys
import time
def main():
print(sys.argv[1]) # this will print out the first argument you input.
time.sleep(3) # in this case, sleep() is used to visualize the result in cmd.3 seconds in my case
if __name__ == '__main__':
main()
希望对您有所帮助!
Further Resource
这可能看起来很基本,但出于某种原因,我无法让任何带有 sys.argv 的程序在命令行中打印。相反,一个新的 cmd window 很快打开,在其内部不显示任何文本,然后关闭。紧接着,cmd 跳过一行并打印 C:\Users\(my userid)>
,等待新的输入。
我的代码如下:
我第一次尝试:
import sys
print(sys.argv)
和 运行 通过命令行输入:
C:\Users\(my userId)\Desktop\filename.py
(文件位置)
没有输出,而是 cmd 执行了我在第一段中描述的操作。
接下来我尝试了:
import sys
def main():
print(sys.argv)
if __name__ == '__main__':
main()
和 运行 它通过命令行的方式完全相同。同样,我对第一段中描述的过程表示欢迎。
我已经检查过我安装 python 的方式是否正确,文件名是否正确,并且文件通常位于它们应该在的位置。我是运行python3.9.
只需输入文件名即可得到预期的 cmd 输出:
'filename.py' is not recognized as an internal or external command,
operable program or batch file.
感谢任何帮助。
编辑:将 python 文件直接移动到 C:\Users(我的用户 ID),然后在 cmd 中使用 filename.py 运行 它会导致与之前相同的问题,程序的两个版本。
您实际上必须 运行 Python 与 python filename.py
或 python3 filename.py
或 py filename.py
。这将启动解释器并将文件名传递给它。然后解释器执行文件的内容。
C:\Users\TigerhawkT3>file.py
'file.py' is not recognized as an internal or external command,
operable program or batch file.
C:\Users\TigerhawkT3>py file.py
['file.py']
首先,sys.argvreturns一个列表。 list[0] 将是您的程序文件名,其余的(list1、list[2] 等)将是您从 cmd 行输入的参数。
import sys
import time
def main():
print(sys.argv[1]) # this will print out the first argument you input.
time.sleep(3) # in this case, sleep() is used to visualize the result in cmd.3 seconds in my case
if __name__ == '__main__':
main()
希望对您有所帮助! Further Resource