2013-08-23 183 views
2

我有一個python文件「a.py」,一個名爲folder的文件夾,並且在它有「b.py」的文件夾中。從文件夾(Python)導入模塊

a.py了代碼:

from folder.b import * 
function() 

它說:

NameError: name 'function' is not defined

它被定義。

爲什麼? 謝謝!

+0

你有'__init __。py'在文件夾中嗎? – enginefree

+0

是的,我在文件夾 –

+0

@ Ofek.T中有'__init__'文件。你能顯示'b.py'和你的dicrectory結構是什麼嗎? – alecxe

回答

1

您是否需要使用folder.b?如果不是:您可以將您的文件夾名稱folder到系統路徑:

import sys 
sys.path.append(your_folder_containing_b.py) 

並更改a.py到:

from b import * 

一個不太直接的方法是改變當前的工作目錄folder然後from b import *

import os 
os.chdir(your_folder_containing_b.py) 
1

您可能需要正確定義PYTHONPATH,確保它包含folder的父文件夾。