1
输入字符串变量
import os
my_cwd = str(os.system("cd"))
输出
C:\ ProgramData \ Anaconda2
输入
my_cwd
输出
'0'
我希望呼吁my_cwd将返回'C:\ProgramData\Anaconda2'
我缺少什么?
输入字符串变量
import os
my_cwd = str(os.system("cd"))
输出
C:\ ProgramData \ Anaconda2
输入
my_cwd
输出
'0'
我希望呼吁my_cwd将返回'C:\ProgramData\Anaconda2'
我缺少什么?
os.system
返回命令作为一个整数的返回代码(这就是为什么你想转换为str
),而不是命令作为一个字符串输出。
为了得到输出,你可以使用subprocess.check_output
(subprocess.run
在Python 3.5+)与shell=True
因为cd
是内置:
import subprocess
value = subprocess.check_output(["cd"],shell=True)
(check_output
抛出一个异常,如果命令失败,虽然)
您还必须使用value.rstrip()
“清理”输出并将结果解码为字符串,因为subprocess.check_output
返回bytes
对象......此外,您的代码在Linux上不可移植,因为所需的comman d将是pwd
。
那么,非常复杂的只是获取当前目录(将cls
或clear
命令留下那种东西)。获得它最pythonic的方式是使用:
os.getcwd()
非常好,谢谢,让。冷却后12分钟我会接受。 –
'cd'在stdout上发出输出?我不希望第一种形式可以工作。 (也许这个电话应该是'pwd'?) –
@CharlesDuffy是的,只是检查。 –