2011-12-22 50 views
2
的模块

我将PyVisa从Python 2.6迁移到Python 3.2。我可以安装模块。 它已列在C:\Python32\Lib\site-packages\pyvisaImportError:没有名为

__init__.py文件从此文件夹导入模块(vpp43.py)。在此行我得到以下错误:

Traceback (most recent call last): 
File "D:\Documents and Settings\grknbl16\My Documents\PatternControl.py", line 2, in <module> 
from taborAwg import configTabor 
File "D:\Documents and Settings\grknbl16\My Documents\taborAwg.py", line 1, in <module> 
from visa import Instrument, vpp43 
File "C:\Python32\lib\site-packages\visa.py", line 1, in <module> 
from pyvisa.visa import * 
File "C:\Python32\lib\site-packages\pyvisa\__init__.py", line 34, in <module> 
import configparser, os, sys, vpp43 
ImportError: No module named vpp43 

错误在哪里?

回答

7

在Python 3.x中,隐式相对导入已经消失。取而代之的

import configparser, os, sys, vpp43 

pyvisa\__init__.py需要说:

import configparser, os, sys 
from . import vpp43 
+0

这就是我想太多,但得到了选择上面的回答,虽然我不能看到它如何可能能是正确的。 – 2011-12-22 17:43:26

+0

我会同意上述。根据http://docs.python.org/py3k/howto/pyporting.html#supporting-python-2-5-and-newer-only上的示例,使用上述方法可以执行此类导入。 – Makoto 2011-12-22 18:08:58

+1

感谢您的回答。我找到了工具2to3.py,它也向我展示了这个解决方案。 – Razer 2011-12-23 08:39:52

相关问题