如何正确使用python模块

时间:2014-07-25 10:08:32

标签: python macos python-2.7 module

我创建了一个名为test.py的测试文件(包含一个名为test的类)并将其保存到文档中(Mac OS X 10.9.3)

然后我尝试通过编写测试导入测试来使用此文件。但是,我收到一个错误,告诉我没有名为test的模块。请你能解释一下这个问题。

1 个答案:

答案 0 :(得分:1)

问题是Documents文件夹通常不在PATH或PYTHONPATH中,因此解释器无法看到存储在那里的脚本(除非Documents恰好是当前工作目录)。

我可以想到两个解决方案:

  1. 将文件test.py移动到Python路径中的某个位置。

    您可以使用以下脚本找到您的PYTHONPATH:

    import os
    try:
        user_paths = os.environ['PYTHONPATH'].split(os.pathsep)
    except KeyError:
        user_paths = []
    

    (来自Mark Ransom对How do I find out my python path using python?的回答)

    您可以找到系统路径

    import sys
    print sys.path
    

    这两个都返回文件夹列表。如果您将test.py放在其中一个文件夹中,那么解释器就会看到它。

    例如,我通常在

    安装自定义模块
    /Library/Python/2.7/site-packages
    

    然后我可以正常import

  2. 手动将文档附加到您的路径。

    您可以使用sys.path.append将路径添加到路径中。

    如果您只需要在少数几个脚本中使用test.py,那么您可以将此代码添加到您要使用的每个脚本中test.py

    import os
    import sys
    sys.path.append(os.path.join(os.environ['HOME'], 'Documents'))
    from test import test