2012-12-06 63 views
1

我想从软件包abc.devices导入模块Devices.py,但它给我一个导入错误:没有名为abc的模块。这里dev是一个包含模块Devices.py的软件包。下面是我的monkeyrunner文件的代码。无法从monkeyrunner的不同软件包中导入模块

import os 
import sys 
import subprocess 
import unittest 
import commands 
from ConfigParser import ConfigParser 
from abc.Devices import Devices 
dev = Devices() 
dev.gDevice() 

from com.android.monkeyrunner import MonkeyDevice, MonkeyRunner, MonkeyImage 
from com.dtmilano.android.viewclient import ViewClient, View 
+0

你可能要搜索的关键字** ** PYTHONPATH感谢 – tdihp

+0

答复,我已经在PYTHONPATH中添加了该软件包,但它不起作用。我不知道为什么这样。当我用python解释器运行这个文件时,没有错误,但是当我使用monkeyrunner运行时,它显示出错误。 – NRP

+0

对不起,monkeyrunner对我来说是新手,+1知识为 – tdihp

回答

0

monlyrunner不读书PYTHONPATH所以你必须输入你的模块之前,要做到这一点(如ViewClient的例子做):

# PyDev sets PYTHONPATH, use it 
try: 
    for p in os.environ['PYTHONPATH'].split(':'): 
     if not p in sys.path: 
      sys.path.append(p) 
except: 
    pass 
+0

感谢您的回复,但实际上我创建了一个脚本文件,它检查环境变量PYTHONPATH和ANDROID_VIEW_CLIENT_HOME。当我从我的.mr文件所在的同一个包中导入此文件时,它不会向我显示错误,但是当我将此文件移动到其他包时,它会显示导入错误:没有名为abc – NRP

+0

的模块有什么关系什么Python版本安装(2或3)? –