在我的本地机器上,我运行一个包含这一行的 python 脚本
bashCommand = "cwm --rdf test.rdf --ntriples > test.nt"
os.system(bashCommand)
这工作正常。
然后我在服务器上运行相同的代码,我收到以下错误消息
'import site' failed; use -v for traceback
Traceback (most recent call last):
File "/usr/bin/cwm", line 48, in <module>
from swap import diag
ImportError: No module named swap
所以我当时所做的是我插入了一个 print bashCommand
它比终端中的命令打印我,然后它使用 os.system()
运行它。
当然,我再次收到错误(由 os.system(bashCommand)
引起)但在该错误之前它会在终端中打印命令。然后我只是复制了该输出并将复制粘贴到终端并按Enter键,它可以工作……
有谁知道发生了什么?
原文由 mkn 发布,翻译遵循 CC BY-SA 4.0 许可协议
不要使用
os.system
。它已被弃用,取而代之的是 subprocess 。来自 文档:“此模块打算替换几个旧模块和功能:os.system
,os.spawn
”。就像你的情况一样: