3

我在我的 Windows 7 副本上安装了 Winpython 发行版。从它复制到的文件夹中启动 iPython 控制台和发行版中的其他项目工作正常。

我想使用 numpy 的 f2py 模块来从 Python 调用 Fortran 子例程。我的理解是 f2py 必须从命令行调用,但是系统似乎没有找到 f2py,ImportError: no module named site当我调用它时返回,无论是否带有标志。当我尝试从命令行运行 python 本身时,也会返回同样的错误。

当我手动导航到 Winpython 目录(例如C:\Users\AGK\WinPython-32bit-2.7.5.3\python-2.7.5)并调用 f2py -c --help-fcompiler以查看是否在那里找到 f2py 时,我收到以下错误

Traceback (most recent call last):
  File ".\lib\site.py", line 538, in main
    main()
  File ".\lib\site.py", line 530, in main
    known_paths = addusersitepackages(known_paths)
  File ".\lib\site.py", line 266, in addusersitepackages
    user_site = getusersitepackages()
  File ".\lib\site.py", line 241, in getusersitepackages
    user_base = getuserbase() # this will also set USER_BASE
  File ".\lib\site.py", line 231, in getuserbase
    USER_BASE = get_config_var('userbase')
  File "C:\Users\AGK\WinPython-32bit-2.7.5.3\python-2.7.5\lib\sysconfig.py",
 line 516, in get_config_var
    return get_config_vars().get(name)
  File "C:\Users\AGK\WinPython-32bit-2.7.5.3\python-2.7.5\lib\sysconfig.py",
 line 449, in get_config_vars
    import re
  File "C:\Users\AGK\WinPython-32bit-2.7.5.3\python-2.7.5\lib\re.py", line 1
05, in <module>
    import sre_compile
  File "C:\Users\AGK\WinPython-32bit-2.7.5.3\python-2.7.5\lib\sre_parse.py"
", line 14, in <module>
    import sre_parse
  File "C:\Users\AGK\WinPython-32bit-2.7.5.3\python-2.7.5\lib\sre_constants.py",
 line 17, in <module>
    from sre_constants import *
  File "C:\Users\konings\WinPython-32bit-2.7.5.3\pyt
py", line 18, in <module>
    from _sre import MAXREPEAT
ImportError: cannot import name MAXREPEAT

有人可以向我解释这个错误的含义和/或如何将 f2py 与 Winpython 一起使用吗?谢谢!

4

1 回答 1

1

您可以将环境变量设置PYTHONPATH为指向这些模块所在的文件夹。这应该解决ImportErrors。

于 2013-10-03T19:05:03.677 回答