0

我正在使用 windows vista,但我正在从 DOS 命令运行 python。我有这个简单的 python 程序。(实际上是一个名为test.py的py文件)

import os
os.system('cd ..')

当我从 Dos 命令执行“python test.py”时,它不起作用。例如,如果执行前的提示 Dos Command 是这样的:

C:\Directory>

执行后,一定是这样的:

C:\>

帮助请。

4

2 回答 2

5

首先,您通常不想使用os.system- 改为查看subprocess 模块。但是,这并不能解决您的直接问题(只是您可能遇到的一些问题) - 实际原因cd不起作用是因为它更改了subprocess的工作目录,并且不影响 Python 正在运行的进程- 为此,请使用os.chdir.

于 2012-06-02T12:34:46.353 回答
0

我真的不会使用 Windows,但你可以尝试cmd /k yourcommandhere. 这将执行命令,然后返回到 CMD 提示符。例如,也许你可以像这样做你想做的事:

subprocess.call(['cmd', '/k', 'cd .. &&  prompt changed'])

正如我所说,我不熟悉 Windows,所以语法可能是错误的,但你应该明白。

如果您不知道,这是一个不同于您在启动 python 脚本之前使用的 CMD 实例。因此,当您退出时,您的 python 脚本应该继续执行,完成后,您将回到原来的 CMD。

于 2012-06-02T18:09:23.653 回答