Python sh导入在PyDev中导致未解决的导入错误

我在python 2.7.5中使用sh来调用shell程序,例如curlmkdir,但是在Eclipse 4.3.0下的PyDev插件2.7.5中。下面的行给出了一个Unresolved Import错误:

from sh import curl, printenv, mkdir, cat

我可以在python shell中运行以上代码。我的确在“偏好设置”窗口shLibraries窗格中包含要包含的路径Interpreter - Python,所以我认为这不是问题。


子衿沉夜
浏览 166回答 2
2回答

倚天杖

尝试使用子流程模块来调用控制台命令。例如:from subprocess import calldir_name = '/foo/bar/'call('mkdir %s'%dir_name, shell=True)

慕莱坞森

在这里子过程是一个不错的选择。我个人建议使用Popen,因为它不会阻塞,并允许您等待命令以其communication()方法完成,该方法还会返回stdout和stderr。另外,请尽可能避免使用shell = True。用法:import subprocesstestSubprocess = subprocess.Popen(['mkdir', dir_name], stdout=subprocess.PIPE)testOut, testErr = testSubprocess.communicate()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python