2011-11-01 31 views
8

Tôi đang cố gắng tìm hiểu python và tôi đang gặp sự cố khi nhập mô-đun. Tôi có tệp .pyc mà tôi đang cố gắng nhập vào vỏ nhàn rỗi được gọi là dfa.pycnhập mô-đun vào ô nhàn rỗi

Tôi có tệp trong thư mục có tên là xyz. tôi hướng đến thư mục này bằng:

os.chdir('/Users/xxx/Desktop/xyz') 

Vì vậy, bây giờ, nếu tôi cố gắng chạy lệnh:

from dfa import * 

tôi nhận được lỗi:

ImportError: No module named dfa 

Nếu tôi chạy lệnh :

os.path.isfile('dfa.pyc') 

nó trả về true.

Ai đó có thể giải thích cách tôi có thể nhập tệp dfa.pyc?

Cảm ơn

+1

giá trị của 'sys.path' là gì? –

+0

['/ Users/xxx/Documents', '/Library/Frameworks/Python.framework/Versions/3.2/lib/python32.zip', '/Library/Frameworks/Python.framework/Versions/3.2/lib/python3. 2 ',' /Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/plat-darwin ',' /Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/lib- dynload ',' /Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages '] Đây có phải là những gì bạn đang yêu cầu không? Đó là giá trị tôi nhận được nếu tôi chạy lệnh sys.path. THanks –

+0

http://stackoverflow.com/questions/279237/python-import-a-module-from-a-folder, hãy thử các đề xuất này? – John

Trả lời

10

Tôi không nghĩ rằng mô đun python được tải Tôi dựa trên những gì bạn làm với chdir. Mô-đun được tải từ thư mục bạn đã khởi động trình bao và thư mục python trong PYTHONPATH.

Nếu bạn muốn tải động mô-đun, bạn có thể kiểm tra imp.loadmodule (mẫu ở cuối trang).

9

bạn có thể thêm vào PYTHONPATH trong mã bằng cách làm

sys.path.append('<newpath'>) 
from dfa import * 

Tôi không tin thay đổi thư mục hiện tại của bạn có bất kỳ ảnh hưởng đến quá trình nhập khẩu và thậm chí nếu nó đã làm, tôi không chắc chắn đó là cách bạn sẽ muốn làm điều đó.

Các vấn đề liên quan