не могу получить доступ к импортированным функциям в Python - PullRequest
3 голосов
/ 29 июля 2011

Может кто-нибудь помочь мне с этим?

Я продолжаю использовать PyDev Aptana для разработки кодов Python.Вот моя структура проекта в PyDev IDE:

/testProject
        /src
            /testModule  
            __init__.py
            testMod.py
        main.py

testMod.py file:

def test(n): 
    print "echo"+n 

main.py file:

import testModule
testModule.test(4) 

Когда я пытаюсьзапустите это в PyDev, это дало мне эту ошибку в main.py, строка 2 (где вызывается test (4)):

AttributeError: 'module' object has no attribute 'test'

Я изменяю main.py на:

import testModule.test
testModule.test(4)  

по-прежнему выдает ошибку 'module' object not callable!

Что не так с этим ??

Ответы [ 2 ]

8 голосов
/ 29 июля 2011

Вы пропустили модуль testMod.Полное название вашего метода: testModule.testMod.test.

2 голосов
/ 29 июля 2011

Ну, это в основном потому, что в testModule нет метода test().Фактически, ваш testModule не является модулем, но является пакетом, в то время как testMod является модулем в пакете testModule.

Итак, с вашей структурой будет работать следующее:

from testModule import testMod
testMod.test(4) 

Подробнее см. http://docs.python.org/tutorial/modules.html

...