我正在使用 windows vista,但我正在从 DOS 命令运行 python。我有这个简单的 python 程序。(实际上是一个名为test.py的py文件)
import os
os.system('cd ..')
当我从 Dos 命令执行“python test.py”时,它不起作用。例如,如果执行前的提示 Dos Command 是这样的:
C:\Directory>
执行后,一定是这样的:
C:\>
帮助请。
首先,您通常不想使用os.system
- 改为查看subprocess 模块。但是,这并不能解决您的直接问题(只是您可能遇到的一些问题) - 实际原因cd
不起作用是因为它更改了subprocess的工作目录,并且不影响 Python 正在运行的进程- 为此,请使用os.chdir
.
我真的不会使用 Windows,但你可以尝试cmd /k yourcommandhere
. 这将执行命令,然后返回到 CMD 提示符。例如,也许你可以像这样做你想做的事:
subprocess.call(['cmd', '/k', 'cd .. && prompt changed'])
正如我所说,我不熟悉 Windows,所以语法可能是错误的,但你应该明白。
如果您不知道,这是一个不同于您在启动 python 脚本之前使用的 CMD 实例。因此,当您退出时,您的 python 脚本应该继续执行,完成后,您将回到原来的 CMD。