使用python与bash

for*_*ght 0 python bash popen

import os
ot = os.popen("%s") %"ls"
Run Code Online (Sandbox Code Playgroud)
TypeError: unsupported operand type(s) for %: 'file' and 'str'
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚为什么会发生错误.我的意思是它是纯粹的字符串操作,对吗?任何帮助都可以得到赞赏.

daw*_*awg 6

由于交互式shell,Python很棒.

尝试:

>>> import os
>>> os.popen("%s")
<open file '%s', mode 'r' at 0x10d020390>
Run Code Online (Sandbox Code Playgroud)

你可以在你面前看到错误.结果os.popen是一个文件.然后,您正在应用字符串操作.

将您所拥有的内容翻译为我认为您尝试做的内容,请尝试:

>>> os.popen("%s" % "ls").read()
Run Code Online (Sandbox Code Playgroud)

或者,直接:

>>> os.popen("ls").read()
Run Code Online (Sandbox Code Playgroud)

但通常首选子进程模块:

>>> import subprocess
>>> subprocess.check_output("ls")
Run Code Online (Sandbox Code Playgroud)