2014-07-04 12 views
13

tôi có cấu trúc gói sau:Tại sao PyCharm phàn nàn về các mô-đun bị thiếu khi sử dụng nhập khẩu tuyệt đối?

projects/ 
    package_name/ 
     __init__.py 
     model.py 

Trong __init__.py Tôi có báo cáo kết quả nhập khẩu như sau:

import package_name.model as model 

PyCharm phàn nàn ở đây là không có mô-đun tên package_name. Nhưng khi tôi nhập gói từ thiết bị đầu cuối trong khi đang đứng ở projects/, Python sẽ nhập gói mà không gặp sự cố. Thư mục làm việc của tôi ở PyCharm cũng là projects và tôi đã thêm nó vào số PYTHONPATH của mình.

Tại sao PyCharm phàn nàn mặc dù nó có vẻ hoạt động tốt và cách khắc phục?

+0

bản sao có thể có của [Pycharm (Python IDE) không tự động hoàn thành mô-đun Django] (http://stackoverflow.com/questions/4906246/pycharm-python-ide-doesnt-auto-complete-django-modules) – laffuste

+2

Không giống hệt một bản sao. Câu trả lời không giải quyết được cho tôi. –

Trả lời

10

PyCharm cần biết tệp nào trong cây của bạn là nguồn Python để nó tìm ra cấu trúc mô-đun của bạn.

Open File -> Settings -> Dự án: -> Cấu trúc dự án

Sau đó đánh dấu projects như một thư mục nguồn.

+0

omg! Nó hoạt động! 8) Tôi biết đây là một nhận xét chậm phát triển, nhưng giờ tôi rất hạnh phúc, một triệu lời cảm ơn !! – Bloke

+0

Nhờ câu trả lời của bạn, tôi thấy rằng thông dịch viên cho thư mục "dự án" của tôi đã được đặt thành python 2.7 và tôi đang cố nhập mô-đun từ 3.4+ –

+0

Điều gì sẽ xảy ra nếu gốc của Dự án là gói bạn cần nhập? Ví dụ. bạn có 'package/module.py' và' package/test/test_module.py'. Trong phần sau, bạn cố gắng 'import package.module' hoạt động tốt khi bạn thực sự chạy test của bạn từ bên ngoài gói nhưng PyCharm vẫn không thích. – dmh

-2

Đó là vì PyChar là một ứng dụng GUI có nghĩa là nó không chia sẻ bất kỳ biến môi trường nào của bạn, thường được xác định trong các kịch bản hồ sơ của bạn.

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